AngularJS準備好投入企業應用了嗎?

jopen 9年前發布 | 13K 次閱讀 angularjs

英文原文:Is AngularJS ready for the enterprise?

AngularJS 的強大和簡單使它成為了當今最流行的 JavaScript 框架——但是企業會采用它嗎? 在當今的 Web 應用開發當中,AngularJS 是最熱門的一個詞。

可以肯定的是,AngularJS 有許多使之熱門的特性。首先,這個 JavaScript 前端應用程序框架由 Google 開發和維護,而 Google 對 Web 也比較了解。其次,共同創建者 Mi?ko Hevery 對 InfoWorld 說:“AngularJS 使得你在 HTML 里面寫很多東西,HTML 驅動應用程序的組裝,而不是在 JavaScript 里面寫很多東西,然后有一堆模板來生成 UI。”

它如此強大,以及它所帶來的簡單,還有其它所有的一切,使得它成為了當今最流行的 Javascript 框架。

然而,它對于企業來說是否安全,這還有爭議。企業習慣于購買擁有 10 年售后支持的軟件,而 AngularJS 這種打破向后兼容的習慣,在未來的發展中會引起關注。

這一次,有理由相信,情況是不同的——即使在很久之后,媒體的炒作轉移到下一個閃亮的框架,AngularJS 仍將被廣泛使用。

非常流行

Web 應用程序市場見證了領頭羊的來和去,比如,根據 Google 搜索趨勢顯示,多年來 SproutCore 都是最熱門的框架。但是它被 BackboneJS 給代替了,反過來,BackboneJS 又給 EmberJS 讓路了。但是沒有一個框架可以跟 AngularJS 相提并論。

Brat Tech 的工程師 Mi?ko Hevery 和 Adam Abrons 在 2009 年開發 AngularJS,不久后就將它開源了。Mi?ko Hevery 在加入 Google 以后,肩負起了后續開發任務。Google 的趨勢圖顯示,到 2012 年 12 月,AngularJS 已經開始將自己從包中分離。

到 2015 年,至少在大眾興趣上面,AngularJS 完勝其它框架。從開發人員招聘網站 Indeed 得到的數據顯示,在需要 AngularJS 經驗的工作上,也呈現出同樣的趨勢。

似乎唯一有機會超過 AngularJS 的框架是 ReactJS,它由 非死book 開發,正在與 Netflix 和其它大型 Web 玩家從事交易。

盡管 ReactJS 受到嚴重關切,開發者 Jeff Waugh 堅持認為,當其它框架開始跟隨它時,“一切都變得越來越有 React 的味道”。

為什么呢?因為,正如系統自動化工程師 Jeff Schroeder 所說,引用當今“完全改變手機游戲”的本地應用的故事,來說明“React 就是更好”。

流行是有代價的

當 AngularJS 問世的時候,開發者就說到了本質問題。在 JavaScript 框架中,說每月一變都太寬泛了,它更像是每分鐘一變,在炒作中流行,然后在快速的交替中衰退。

是否有理由相信,AngularJS 將會抵擋住 ReactJS(反過來,下一個強大的框架)?

相信 AngularJS 的一個理由是,盡管它有過愚蠢的舉動,也沒有影響它的流行。比如,它經常打破向后兼容性,強制它的追隨者重新學習 AngularJS 開發。

關于 AngularJS 經常打破向后兼容性的趨勢,它的批評者 Danny Tuppeny 哀嘆道:

在我們當前的代碼庫中,部分已超過 10 年的歷史,我們希望新的代碼庫也會持續這么久。似乎如果我們今天開始使用 AngularJS,我們將會被強制重寫至少 3 到 4 年前的前端代碼(前端可能是個大型代碼庫,還得確保應用能照常運行)。這聽起來一點也沒有吸引力…我們需要穩定和長期支持的框架,不是經常發明新的概念, 然后打破原有的基礎進行重寫。

我認為,有必要打破原有的 Web 來跟上 Web 創新的步伐。比如手機 Web 開發者 Nene Bodonkor 做出假設:如果一些框架很自滿,不跟上市場的需求,那么它們就是很容易被代替的。

并非所有人都同意。EmberJS 的創建者 Yehuda Katz 認為,強制所有人每隔幾年都重寫所有的東西,只會放慢我們的工作。

因此,EmberJS 和 非死book 的 ReactJS 以及其它框架一樣,盡最大努力向后兼容。這使得這些框架對企業更加友好。

然而,AngularJS 占主導地位。盡管對它的信徒造成嚴重創傷,它還是很流行。

那是否意味著,企業可以依賴它,基于它構建?作為一個企業,你能相信它嗎?

為一個不同的技術做準備

Monsoon(一個手機和 Web 應用開發公司)的 CTO Michi Kono 認為,答案是肯定的。

While Kono 在一次采訪時告訴我,他對于 AngularJS2.0 的新聞和向后兼容性是心煩意亂的,他專研了其中的底層技術決策,感覺 AngularJS 的核心開發人員所做的決策在技術層面上是有意義的,但是他們在交流上有些可怕。

此外,“因為在 Google 內部都使用這個框架,我只能假設支持企業和遺留版本只是一個巨大的用例。在接下來的幾個月里,我確信,在重要的特性添加到 2.0 規范之后,我們會看到關于遷移的討論”。

當我問及企業應該如何看待 AngularJS 時,Kono 很明確:AngularJS 做了很多事情來確保企業安全:

你不得不看看是什么使得(以及維持)Angular 比它的競爭者更加流行。這個框架不會強烈地尋求改變已有的約定,這使得學習它變得更簡單。盡管一些人認為,這種靈活性會使得它比固執己見的框架(如 Ember)更加糟糕,那只是看到了 Angular 的缺點而已。

易于入門的特點使得更多的開發者來學習它,它和你使用的其它技術也能更好地適應。對于需要大規模招聘和開發的組織而言,這些理由極為重要。Angular 就是這樣,可能會延續這種勢頭。

Kono 也指出,它使得大型組織從海量 AngularJS 開發者中進行招聘成為可能,除此之外,Angular 比其它一些框架更低一級,使得它學起來不像是框架,而是工具箱。這個工具箱方法使得它在廣泛的使用中非常靈活,比如在網站上添加一個按鈕,你可以同時使用 其它任何框架。

最后,Kono 強烈認為“類型化”的 JavaScript 將會是 2015 年的一個巨大的趨勢。Microsoft,Google 和 非死book 都在努力以企業期待的方式升級 JavaScript。這些努力趨向于使得 JavaScript 看起來越來越像 Java(這是一種好方式)。AngularJS 2.0 將會用 Google 類型化的 JavaScript(AtScript)來編寫,Kono 期待下一代 JavaScript 框架可以有大量供開發者使用的特性。

它適合你嗎?

所有的這一切都是令人信服的理由,只為讓你試一試 AngularJS,不管你的企業有多大。但是你應該堅持下去嗎?

Rackspace 的副總裁 Van Lindberg 開玩笑:一想到“保持強大”和“JavaScript 框架”同時出現在一個句子中就是一個錯誤。也許他是正確的。

但是炒作和實際使用是有很大不同的,AngularJS 看上去兩者都有。正如 Waugh 所指出的,在 Web 的爆發中,JavaScript 框架吸引了關注和很多用戶,它們一直都是這樣。

AngularJS 肯定符合“關注和很多用戶”這個定義。

現在玩的把戲,正如 Adobe 的 Web 開發人員 Brian Leroux 所堅持的,就是為變化而優化你的框架,或者陷入重寫而耽誤了進度。

換句話說,現代企業需要能夠接受 Web 上的快速變化,也表明需要接受像 AngularJS 這樣的框架的快速變化,這樣的框架使得 Web 應用開發更簡單和強大。

來自: www.sanesee.com

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!