JavaScript,一種所有主流瀏覽器都支持的語言,是開發基于瀏覽器的 Web 應用程序的主力,幾乎每年都會受到來自眾多開發人員的關注。自然地,框架和庫的生態系統自然而然地圍繞著 JavaScript 而努力,以簡化和增強 JavaScript 應用程序的開發。
這些工具提供從事件處理到代碼縮減和數據渲染的功能。以下是開發基于瀏覽器的 Web 應用程序的 JavaScript 開發人員工具包中最必要的技術匯總。
Angular
Angular,之前是由Google開發的被稱為AngularJS,是用于移動和桌面Web開發的單框架。為了創建類原生漸進式web應用程序,Angular提供用于匯編應用程序的數據服務的依賴注入,以及用于復合組件的HTML模板。
何處下載Angular?
Angular項目快速入門頁面使得開發者可以輕松開始使用Angular。
Angular的功能
2016年9月的Angular第2版的特色是基于TypeScript(Microsoft的JavaScript類型化超集)的重寫,以處理在Angular初始版本中架構上存在的性能限制。
現在,開發者都在等待Angular 5,預計到到十月二十三日發布(沒有第3版或第4版)。它預期的功能包括:
用于在瀏覽器中緩存應用程序,以加強構建漸進的Web應用程序的便利性。
構建優化器,通過刪除不必要的代碼使應用程序更小。
使Material Design組件與服務器端渲染兼容。
Angular 6,預計發布時間比Angualr 5玩晚發布五到六個月,將聚焦于與Angular 5相同的主題:易用性,更小尺寸和性能。Angular本身具有強大的生態系統,在IDE中有四個數據庫和支持,如JetBrains IntelliJ Idea。
Aurelia
由聚焦的模塊組成的Aurelia是由Blue Spire開發的用于移動、桌面和Web應用程序的客戶端框架。它實現了快速渲染和“高效”的內存使用率。
何處下載Aurelia?
你可以從GitHub上下載Aurelia。
Aurelia的功能
Aurelia有處理元數據、依賴注入、綁定、模板和路由的模塊。Aurelia集成了Web組件,并提供與對象的雙向數據綁定。多數Aurelia代碼都是以純JavaScript編寫的。其他功能包括:
一個用于構建自定義元素和給元素添加屬性的HTML編譯器。
支持動態加載。
用于單元測試的可構建耦合代碼的依賴注入容器。
提供創建新項目選項的Aurelia CLI,需要安裝Node 4或更高版本、NPM 3和Git。
與Polymer庫的集成,用于構建可重復使用的web組件。
在模板引擎中,用于組件繼承時支持bindable的繼承。
Backbone.js
Backbone.js ,也就是 Backbone ,為重度 JavaScript 應用程序提供了結構體。它具有帶有鍵值綁定和自定義事件的模型,它們是一個支持可枚舉函數和聲明性事件處理視圖的 API 的集合。
何處下載 Backbone.js ?
你可以從 Backbone 項目網站下載開發版本和產品發布版本。
Backbone.js 的功能
Backbone.js 中的數據是使用可以創建、校驗、銷毀并保存到服務器的模型表示的。這些模型通過 RESTful JSON 接口連接到應用程序。使用 Backbone.js 時,當 UI 操作提示要更改模型的屬性時,該模型會觸發更改事件。顯示模型狀態的視圖會收到此更改的通知并重新渲染他們。
Ember.js
Ember.js 是一個強調開箱即用的高效率的框架。它具有集成的模板,被稱為句柄條,旨在減少代碼編寫量; 在數據改變時,這些模板會自動更新。
從哪里獲取 Ember.js
可以在 NPM 中輸入 npm install -g ember-cli@2.15 來安裝 Ember.js 。
Ember.js 的功能
Ember.js 的功能包括:
專注于簡化開發的 API 。
專注于讓開發者使應用程序特例化的通用風格。
Ember.js 3.0 穩定版會在2018年1月1日發布測試版之后的2月12日發布。在 2.x 版本中不推薦使用的 API ,依然是支持的,這些 API 將在 Ember.js 3.x 中被清除。 一個 add-on 應將支持在 3.x 代碼行中的 Ember.js 2x API 。
Ext JS
與其他知名的 JavaScript 框架不同,Sencha 的 Ext JS 并不是開源的; 它是一種商業產品。它用于構建面向企業的數據密集型跨平臺 Web 應用程序,需要多種形式的因素。
何處下載 Ext JS ?
The Ext JS 軟件可以從 Sencha 的 Ext JS 頁面下載到。
Ext JS 的功能
Ext JS 框架提供了許多組件,例如數據網格和日歷。Ext JS 可與 Sencha Architect 等工具一起使用,用于拖放 HTML5 應用程序開發,以及 Sencha Themer ,用于應用程序的樣式設置。
Ext JS 的構建器正在考慮如何使用 Ext JS 的架構執行長期的任務。Sencha 計劃在今年年底或明年初發布 Ext JS 7 ,但是由于 Sencha 收購了 Idera ,這些計劃現在被擱置了。關于提供符合最新的 ECMAScript 標準和使用 NPM 包管理器和 Webpack 模塊綁定器的可行性討論已經舉行過了。
jQuery
JavaScript 的 jQuery 庫的 API 提供了操作 HTML 文檔、事件處理和動畫等功能。jQuery 庫由 JS 基金會管理,于 2006 年 8 月首次發布。
哪里下載 jQuery?
jQuery 可以從jQuery 項目網站下載。
jQuery 的特性
jQuery 并不是用來構建應用程序的框架,但它提供基本的 API,很容易在瀏覽器中操作 DOM。jQuery 也可以和應用程序構建工具一起使用,比如 Angular 和 React/Redux。
jQuery 團隊現在差不多每年發布兩個版本,從現在到 2018 年中只會發布一些小版本。除此之外,jQuery 4.0 和后續版本要求使用“下一代”JavaScript完全重寫,這需要對構建系統進行更新。在 jQuery 4 和后續版本中還有如下計劃:
重寫 jQuery 的速度框架,跟蹤性能回歸
新設計的事件模型,會丟棄特殊事件鉤子,避免使用 jquery.Event 類的包裝
支付新的原生選項,比如被動事件監聽器
Meteor
Meteor(又名 Meteor.js )是一個 JavaScript 框架,可以使用較少的代碼更快地開發 Web、移動和桌面應用程序。開發人員可以在所有環境中使用 JavaScript ,包括在應用服務器、Web 瀏覽器和移動設備上。
何處下載 Meteor
Meteor 軟件可以從 Meteor 項目網站下載。
Meteor 的功能
Meteor 平臺,也被稱為 Meteor.js ,包括用于構建已連接客戶端的響應式應用程序的技術,構建工具以及一系列來自 Node.js 和 JavaScript 社區的軟件包。使用 Meteor 后,服務器會通過設備發送數據而不是HTML,然后在客戶端渲染它。
Meteor 1.6 是下一個發行版本號,其重點是升級到 Node.js 8,這將讓 Meteor 更好地利用服務器上的 ECMAScript 功能,從而提高構建性能。
Polymer
Google的Polymer JavaScript庫旨在使開發人員能夠充分利用Web組件,為可重用的自定義元素提供與瀏覽器內置元素的交互提供可能。
何處下載Polymer?
你可以從Bower包管理器上安裝Polymer。
Polymer的功能
5月份發布的Polymer 2.0版通過去掉DOM操作時使用的Polymer.dom改善了互操作性。這使得使用其他庫和框架時再使用Polymer組件更容易。
Polymer 2.0中的其他功能包括:
數據系統的改進,以提升數據通過和元素之間的調試和傳遞。
ECMASript 2015類和標準的自定義元素。Polymer第1版中的方法用于定義元素,而不是使用Plymer的工廠方法。但是工廠方法仍然通過兼容性層來支持。
更簡單的數組處理。
即將發布是Polymer 3.0,它目前是預覽版本,功能包括Bower和HTML import、NPM和ECMAScript 15模塊。Bower和HTML imports功能適用于基于HTML基于導入的工作流程。但是,他們把Polymer置于網絡開發的主流之外,并且使人們難以使用其他框架或構建工具。
React
Facebook用來構建用戶界面的 React 庫 ,提供基于組件的聲明性的視圖(view),使用JavaScript來編寫組件邏輯。React庫,也就是React.js,并不支持模型(model)和控制器(controller),但是可以通過其他一些相關的項目完善這些功能。
哪里下載 React
React 可以從 React 項目網站 下載。
React 特性
你可以使用React的 JSX 語法 來描述用戶界面。JSX允許在一個組件中混合使用JavaScript和HTML。在構建的過程中會轉換成純JavaScript。
為了提高性能,React 在最近的發行版React 16 中對架構進行了重寫,稱為Fiber。這次更新的主要特點是著重于為了處理大型組件的異步渲染。但是React本身還并不支持異步渲染,這將會在React 16.x的版本線中實現。
React 16的其他改進包括:
提供組件堆棧追蹤,使得調試更加簡單。
可以在組件的渲染方法(render)中直接返回字符串或者數組。
新的更快的,基于流的服務器端渲染。
更接近原生應用的性能。
在一些組織如Apache軟件基金會反對其許可條款后,React 重新修改了其基于BSD+MIT Patents的新的許可證。Apache 擔憂基于BSD + Patents 的許可使得軟件對于下游項目來說,不再是一個“萬能捐贈者” 。
Vue.js
Vue.js是React的競爭對手之一,聲稱更快的渲染速度。其核心庫聚焦于視圖層,并且框架主要是為了增量實現。
何處下載Vue.js?
Vue.js軟件可以從Vue.js項目網站下載。
Vue.js的功能
聲明式渲染是Vue.js中的關鍵,使用模板語法將數據渲染到DOM中。Vue.js組件系統是一種抽象,支持由可自包含開發和可重用的模塊組成的大型應用程序。Vue.js中的組件本質上是一個具有預定義選項的Vue實例。
Vue.js 2.5將于2017年10月到來,具有更好集成了TypeScript功能。稍后版本的Vue.js的計劃包括:
使TypeScript用戶更容易在Vue.js中啟動新項目
使用代理重寫框架的響應式系統
支持WebAssembly可移植代碼格式
吸收Web組件更多功能的能力
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com