加速Web開發的十種Node.JS框架
譯文
【51CTO.com快譯】眾所周知,Node.js能夠通過提供不同的框架,使得Web應用程序的開發過程更為方便且高效。下面讓我們來一起瀏覽一下,目前能夠加速Web開發的十種Node.JS框架。
1.Hapi.js
Hapi.js可謂Node.js中強大的框架之一。它的功能不但豐富,而且實用。它可以被用于構建一些應用程序,以實現與API、或其他軟件應用的交互。
Hapi.js能夠提供的功能包括:使用JOI(譯者注:是一種工具模塊,可用于JavaScript對象的校驗)的輸入驗證、緩存、日志記錄、配置管理和錯誤處理等方面。所有這些功能都是旨在構建具有簡潔代碼、以及較高性能的Web應用和API。
2.Sails.js
Sails.js是另一個功能強大的Node.js框架,也是備受歡迎的MVC框架之一。它可以被用于構建自定義的、企業級的實時應用。作為一款前端必備的框架,Sails.js允許用戶在較短的時間內,構建出實用、且適合于生產環境的應用程序。
另外,Sails.js具有強大的針對對象關系映射(Object Relational Mapping,ORM)的解決方案、以及用到了Waterline(譯者注:它是Github中支持各種主流數據庫的ORM模塊)的數據庫層。因此Sails.js能與大多數可用的Grunt模塊相兼容。
3.Mean.js
Mean.js有時也被稱為Mean.IO,它是各種框架的組合,其中包括:MongoDB、Express.js、Angular.js和Node.js。
由于支持JavaScript的所有組件,Mean.js為Web應用的開發提供了一種簡化和加速式的框架。
4.Express.js
Express.js通常被認為是Node.js的基本框架。它提供了一系列廣泛的服務功能,可被用于構建各種移動和Web應用、以及對應的API。
作為一款快速的、輕量級的框架,Express.js提供了包括模板引擎、數據庫集成、以及多路由在內的各種實用功能。
5.Meteor.js
Meteor.js是一種全棧式框架,它允許用戶生成與Android、iOS和Windows平臺相兼容的跨平臺代碼。
通過與MongoDB集成,Meteor.js可以自動將數據的更改部分,直接傳遞到客戶端,而無需同步任何全量的代碼。這些主要依靠的是分布式數據協議、和“發布-訂閱”模式。而這恰恰成就了其成為強悍的動態Web應用開發框架。
6.Kraken.js
Kraken.js是一款能夠提供動態配置的,基于Node.js的Web應用框架。它為Node.js添加了一個安全層、以及一套能夠擴展到Express.js上的結構。
另外,Kraken.js還提供了一定的安全性,可以處置應用程序生命周期中的各種事件、以及中間件的相關功能。Kraken.js帶有如下幾個可以獨立使用的模塊:
- Lusca,可用于提高應用程序的安全性。
- Kappa,一個用于NPM(譯者注:JavaScript的包管理工具)代理的模塊。
- Makara。
- AdaroFlatiron.js。
7.Flatiron.js
Flatron.js為所有用戶提供了非常實用的現代化資源和工具。他們中一些可用于修改URL路由、創建模板、管理數據和插件。
8.Koa.js
同樣作為一種Node.js框架,Koa.js消除了通過使用ES6生成器來進行的回調與操作。Koa.js的內在靈活性體現在:它允許用戶為Web應用選擇相關的模塊。
9.LoopBack
構建于Express.js之上的LoopBack,允許用戶實現各種可伸縮的API。LoopBack是通過StrongLoop Arc來監控和部署應用程序的。它使用Swagger 2.0來擴展內置API的管理器,進而讓用戶創建相應的API文檔。該特性讓LoopBack成為Node.js中具有靈活性、且全面的Web應用開發框架。
10.Keystone.js
Keystone.js經常被廣泛地用于開發原生數據庫驅動(database-driven in nature)的Web應用、網站、以及各種API。
Keystone.js使用的是諸如MongoDB之類的NoSQL數據庫。它使用Mongoose,一個先導式的ODM(Object Data Model)包,來連接用戶的MongoDB數據庫。通過提供嵌入式服務,Keystone.js還可以管理各種UI、以及身份驗證服務。
原文標題:10 Powerful Node.JS Frameworks to accelerate the Web Development,作者:Sourabh Nagar
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】