JavaScript MV*框架最值得關注的七個亮點

ruly6684 7年前發布 | 9K 次閱讀 JavaScript開發 JavaScript

作為目前Web領域最具人氣的編程語言,JavaScript在發展之初并不受歡迎——因為設計并未考慮到服務器端編程的實際需求。然而,隨著用戶體驗在Web開發領域所占比重的持續提高,專注于設計用戶界面的特性愈發受到重視,這也成為JavaScript如今被廣泛使用的根本原因。而隨著HTML 5與CSS 3在創建適應性與響應式網站中的作用快速提高,JavaScript亦起到可觀的輔助作用。

目前市面上存在大量有助于建立JavaScript應用架構的庫與框架。而MV*正是指那些能夠實現MVP與MVVM模式的庫。其中最新且最值得關注的方案選項包括:

1、Backbone.js

這套框架具備鍵值綁定、自定義事件、集合等模型,且可將這些因素通過RESTful JSON接口全部接入您的現有API。這套輕量化JavaScript庫專門用于支持單頁面Web應用。依賴于UnderscoreJS庫運行,后者能夠為各類常見JS任務提供一面重要的實用功能。在它的幫助下,您的數據將作為模型加以表達,并可面向服務器實現創建、驗證與保存。視圖將顯示該模型的狀態,可通過事件變更自行觸發重新渲染。在這方面,Backbone作為重要的結構化方案能夠保證數據始終與HTML UI保持同步。

2.Angular.JS

這基本上屬于一套用于為應用擴展HTML詞匯表的工具集。允許用戶創建自定義HTML標簽。Angular當中的可復用組件——即directives——也相當強大且能夠幫助用戶創建您自己的語義可復用HTML語法。Angular會直接修改頁面DOM而非添加內部HTML代碼,這意味著其速度表現相當出色。大家可以通過Angular采取多種方式實現同樣的效果,因此該框架能夠廣泛適應各類擴展樣式與任務需求。

3.Ember.JS

Ember.JS是一套可用于創建高復雜度Web應用的JS框架。提供大量由Handlebars Templating語言、視圖、模型以及路由機制編寫而成的模板。這些Handlebars模板通常能夠實現自動更新,因此您的HTML也可享受到更新收益——包括底層模型的變化。要使用Ember.JS,您不需要編寫任何JS代碼。這套平臺可以說代表著未來Web平臺的使用體驗水平,提供的各項組件允許用戶創建指向當前應用的自定義HTML標簽。

4.Knockout.JS

這套高人氣JS庫旨在通過使用MVVM模式以簡化JS UI。利用Knockout,基于數據的高復雜度UI的創建工作將變得相當簡單。這套庫能夠獨立實現上述效果,亦可為jQuery等其它庫提供支持。其最為擅長的是將各UI元素接入被定義為JS對象的基礎數據模型當中,當我們對UI進行變更時,對應模型也將自動完成更新。

5.Agility.JS

這套框架允許大家編寫出易于維護且無需解決基礎設施運行負擔即可復用的瀏覽器代碼。其可幫助開發者更快編寫出Web應用,使用方式與jQuery相同,但同時亦可降低MVC下各可用對象的維護難度。Agility能夠全面支持JS代碼編寫,但其同時亦不會強制要求編寫JS代碼。Agility采用單一對象類型,其中包括一套全模型-視圖組織堆棧。

6.Can.JS

這是一套不斷發展的客戶端JS架構庫集合,主要目標是在創新性與穩定性間找到平衡點,具體而言即在Web應用的大小、易用性、速度、安全性與靈活性間取得平衡點。對于經驗豐富的Web開發者而言,這絕對是最為出色的庫選項,特別適合開發項目量龐大的業務場景。Can.JS由大量獨立的軟件包與模塊組成,具體包括can-compute、can-define、can-set、can-connect、can-stache、an-component、can-stache-bindings、、can-route等等。

7.Spine

您是否希望自己的JS應用能夠具備最出色的UI?Spine是一款易于使用的輕量化JS框架,旨在幫助開發者輕松獲取任何可用框架的高質量說明文檔,其中不包括任何需要配置及主題設定的復雜部件。Spine的最大優勢在于,其要比之前提到的多數庫更為小巧,不含任何集合且必須為對象標識符設置ID。

毫無疑問,JS MV*框架已經成為Web開發者們打造出色Web設計與應用的必要資源。這些框架各具特色與優勢,您只需要了解其秉性并根據實際需要進行選取即可。當然,在選擇時除了直接收益之外,大家也應當考慮各框架的對應社區支持能力、發展前景與市場占有率,從而真正與行業內最強大的框架一路同行。

 

來自:http://developer.51cto.com/art/201702/531501.htm

 

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