什么時候 AngularJS 會超越 jQuery

jopen 9年前發布 | 9K 次閱讀 jQuery

web 新手常問的一個問題是“我應該使用哪個框架?”但這個問題卻沒有‘正確’的答案,通常主要討論的是 AngularJS 和 jQuery的區別。但它們間的比較在某些方面就像是在比較蘋果和橘子的區別,對于一個web應用,沒有明確的原因非要使用一個主要的 web 框架實現。下面一些使用 AngularJS 要優先于 jQuery 的場景。

當 DOM 操作是次要時

jQuery 主要關注于 DOM 掃描和操作。一個常例是通過用戶操作進行 DOM 元素的添加和修改,例如將AJAX返回的結果通過預先處理的HTML添加到已存在的DIV中。但使用 AngularJS,開發的焦點在于數據展示。通過雙向數據綁定,數據的更新會自動完成而不需要刪除和重建 DOM。雖然 DOM 操作是不可能完全避免的,但較只使用 jQuery,使用 AngularJS 你只需處理較少的 DOM 操作。

當注重效率時

雖然 AngularJS 學起來有點難,但它對于開發者來說具有較高的效率。AngularJS 的很多特性注重于提高開發者的產出。例如為支持單元測試的內建擴展支持。注重于測試的特性通過簡化單元測試,從而使開發者注重于生產更健壯可靠的代碼。另外,通過將DOM操作與程序邏輯解耦,開發者能夠專注于“為什么”而不是“如何做”。通常,這會導致短小但穩定和易于調試的代碼。

在采用描述性接口的時候

使用jQuery常常遇到的問題是它采用的是命令式編程,說的再透徹點,它告訴計算機如何才能達到目標,這樣的處理過程產生的結果就是你想要的結果。不過,描述性編程則相反,它告訴計算機你想要的結果,讓計算機自己確定該如何實現。JavaScript 總的來說是采用命令式方法進行設計的,而HTML-以及AngularJS給HTML所增加的指令-都是專門為描述性編程而設計的。如果你使用 AngularJS進行編程,那么你最終采用的描述性編程,它更符合HTML原來的設計意圖-即告訴計算機你想得到的顯示結果,然后由計算機處理具體的細節。如果采用了這種編程方式,那么完成具體任務所需代碼的行數就會大大的減少了,這樣的代碼可讀性更高,維護起來更容易。

結論

如上所述,AngularJS 和 jQuery 在許多方面都不具有可比性。這兩個框架設計的目標不同,解決問題就不同。話雖這么說,開發人員開發某些數據顯示和維護方面的應用而不是數據分析方面的應用的產能得到了大幅提升,AngularJS 在這些領域都比 jQuery 好很多。最終要選擇哪個框架由你所在單位的能力和所采用工具的核心組件相關的許多因素決定的,不過,無論如何,AngularJS 都是提高互聯網應用開發人員產能,減少維護費用的不二的選擇。

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