2017年 JavaScript 框架回顧 -- 后端框架

jopen 6年前發布 | 22K 次閱讀 JavaScript

本文是2017年 JavaScript 框架回顧,主要介紹 JavaScript 的后端框架情況。

2017年 JavaScript 框架回顧 -- 后端框架

從上圖中可以看到,Express 作為用 JavaScript 編寫的后端服務的主流解決方案,占據了后端框架使用率的絕大部分,其次的四個最大框架對比于 Express 來說,占用率都很小。

2017年 JavaScript 框架回顧 -- 后端框架

到目前為止,我們所討論的幾乎所有框架的絕對使用量都在不斷增加。自2013年以來,Express 的使用率已經增長了6000%。之所以 Express 的6000%增長在第一張圖中顯示成下降的狀態,是因為在同一時間內,總的 npm registry 增長了67,000%。也就是說,JavaScript 社區正在以編程語言史上前所未有的速度增長。

npm 的前端使用正在爆炸式增長

目前,大約83%的 npm 開發人員正在編寫運行在前端的 JavaScript,而只有41%的人正在為后端編寫代碼(前后端開發者有重疊的部分)。前后端開發人員的比例為約為2:1,這也表明 npm 社區的未來在于前端的開發和工具制造。

接下來我們查看其它的后端框架。

其他后端框架

下面是除 Express 之外的四個最大的后端框架,分別為:

  • Koa
  • Hapi
  • Sails
  • Next

koa

2017年 JavaScript 框架回顧 -- 后端框架

藍色代表的是 koa 的相對使用率情況。Koa 是 Express 的開發人員使用一套更緊密的設計原則編寫的,旨在創建一個更小、更富表現力同時也更健壯的 Web 框架。雖然 Koa 具有不低的使用量,但其增長速度還不是很快。

Hapi

2017年 JavaScript 框架回顧 -- 后端框架

Hapi 是一個用于構建應用和服務的豐富框架,Hapi 使得開發者更專注于編寫可復用的應用邏輯,而不必把時間花費在基礎設施的搭建上。2014年底,Hapi 有一個短暫的繁榮時期,然而自此之后,Hapi 的使用率就一直處于下滑狀態。

Sails

2017年 JavaScript 框架回顧 -- 后端框架

Sails 是 JavaScript 的 Ruby on Rails 克隆。盡管最初在2012年年底推出時,Sails 非常受歡迎,但它卻也遵循著“半衰期”的衰退模式,這也表明 Sails 不再被新項目采用。

Next.js

2017年 JavaScript 框架回顧 -- 后端框架

Next.js 是一個基于 React 的通用 JavaScript 框架,同時也是一個較新的框架。

Zeit 的開發團隊在 React 的基礎上創建了 Next.js。Next.js 提供了一種很方便的方式來創建新的 Web 應用。當前 Next.js 的使用率盡管還很低,但是卻一直保持著上升的趨勢,值得關注。

Npm 中的前后端對比

2017年 JavaScript 框架回顧 -- 后端框架

前面已經提到,當前前端開發者的數量遠超后端開發者的數量,但這種情況是否反映在 npm 的前后端安裝包數量上呢?

盡管前后端的安裝包也存在重疊的情況,但是整體數量還是后端安裝包數量高于前端。

npm 中的前端使用情況

2017年 JavaScript 框架回顧 -- 后端框架

2013年以前,npm 中的前端框架使用量非常大,Backbone 的流行也是促成這種情況的原因之一。但是,隨著 Express 和其它服務器端框架的持續增長,Backbone 變得不那么流行了。

npm registry 的前端使用率在經過兩年的下滑之后,2015年開始再次開始增長。

跟蹤 npm 前端的具體使用情況

為了弄清楚 npm 前端的具體使用情況,我們將關注于提供前端代碼的一些庫,主要包括:

  • Bable
  • Webpack
  • Browserify
  • Bower
  • RequireJS
  • SystemJS

Bable

2017年 JavaScript 框架回顧 -- 后端框架

Babel 是一個轉譯器,用于將現代的 JavaScript 版本轉換為與 Node.js 中的服務器端 JavaScript 以及瀏覽器兼容的 JavaScript 舊版本。Babel 非常受歡迎,被用于前端和后端應用程序中。

Webpack

2017年 JavaScript 框架回顧 -- 后端框架

Webpack 是專門為瀏覽器提供 JavaScript 代碼的工具。React 一直使用 Webpack 為瀏覽器服務做準備,很長一段時間,React 和 Webpack 都保持著相同的增長趨勢。

但是從2016年年中開始,Webpack 的使用率開始超過 React。這也表明,Web 開發人員已經開始更廣泛的采用 Webpack,而不僅僅是 React 應用程序。

Browserify

2017年 JavaScript 框架回顧 -- 后端框架

在 WebPack 成為流行的 JavaScript 代碼工具之前,Browserify 一直是瀏覽器端轉化服務器端 JavaScript 的重要工具。Browserify 也曾在2015年中期保持很高的受歡迎程度,但是從2016年開始,隨著 Webpack 的逐漸流行,Browserify 的受歡迎度出現了急劇下滑的現象。

這也許和兩個工具的設計目的有關。Browserify 為瀏覽器帶來了 Node.js API surface(包括用于許多后端的API),Webpack 則是一個更通用的模塊系統和編譯工具,用于加載圖片、CSS和其它前端資源。因此,對于非 Node.js 開發者來說,Webpack 更為有用。隨著 npm Registry 前端使用的急劇增加,Webpack 已經成為一個非常有吸引力的選擇。

Bower

2017年 JavaScript 框架回顧 -- 后端框架

瀏覽器端模塊化 JavaScript 的另一個解決方案是 Bower,Bower 將模塊引入了瀏覽器。盡管 Bower 客戶端是由 npm Registry 托管和安裝的,但是 Bower 卻是一個完全獨立的非 npm 模塊。

雖然 Bower 的開發人員認為其客戶端具有許多優秀的特性,但是他們還是贊同 CommonJS(大多數 npm 包所使用的 JavaScript 模塊的格式)是一種更為靈活和流行的解決方案。Bower 的受歡迎程度自2014年起開始出現了持續的下滑。

RequireJS 和 SystemJS

2017年 JavaScript 框架回顧 -- 后端框架

Bower 的模塊并不是 CommonJS 的唯一選擇,RequireJS 是另一種具有模塊格式的可選方案。RequireJS 在2013年初很受歡迎,但自2014年之后,開始與 Bower 一同出現下滑。2015年發布的 SystemJS 增長很緩慢。

Webpack 和 Express

2017年 JavaScript 框架回顧 -- 后端框架

目前,我們判斷 npm 前端使用量的最可靠依據就是 Webpack。相比于 Express 的相對使用率,可以看到,Webpack 在三年時間內,相對使用率迅速攀升到了 Express 的一半。

我們大膽預測 Webpack 將繼續增長,甚至可能會超過 Express,這也與我們所見到的 Webpack 的新用戶比例一致。幾年后,npm 將是一個主要的前端工具。

總結

2017年 JavaScript 框架回顧 -- 后端框架

npm 生態系統中前端和后端的使用量增長,對于 JavaScript 的整體而言都是一個好消息。JavaScript 語言所具有的靈活性和易用性,是一種很大的優勢。

也許 JavaScript 的廣泛采用,正是由于 JavaScript 的內置??特性很少,使得 JavaScript 語言在被使用時,有了很多的其它選擇。

現在 JavaScript 使用量正在急劇增長,npm 也在與之同步增長。

 

原文鏈接:https://www.npmjs.com/npm/the-state-of-javascript-frameworks-2017-part-3-back-end-frameworks

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