node框架

nodejs的框架

最近來node的火熱,帶動了一大批的框架,例如php

  • express
  • koa
  • sails
  • loopback
  • thinkjs
  • egg

這些是我比較過的框架,下面依次作個簡單介紹node

express

這個是使用最多的框架,也是各個推薦新手入門的框架。jquery

Express 不對 Node.js 已有的特性進行二次抽象,只是在它之上擴展了 Web 應用所需的基本功能(我的感受至關於node中的jquery)laravel

  • 封裝了路由
  • 靜態資源託管
  • 中間件的概念
  • 內置了jade,ejs模板引擎

我的評價,express適合小型項目,不適合大型企業級項目,我的用用還能夠,作爲快速入門是個很好的選擇,用過以後就能夠考慮進入 koa 框架的道路express

koa2

koa 是比 express 思想更先進的框架,是express原班人馬打造框架

koa解決的最大問題,利用async await的新語法特性,解決回調地獄的問題koa

koa 與 express 最大的不一樣,我的以爲有3點:async

1.在於 handler 的處理方法,express 是普通的回調函數, koa 是利用ES7 中 Async/Await 的特性,沒有回調,沒有回調,就大大加速了開發速度這一點而言,已經足以讓咱們跪舔了函數

2.koa是洋蔥中間件模式,執行到next的時候,會去調用下一個中間件,下箇中間件執行完再接着執行上箇中間件next下面的代碼oop

3.koa把 request, response 封裝到了同一個上下文對象 content

最爲express的進化,確實帶來更好的開發效率,成本只須要學西一下async await的新語法特性。能夠說做爲express框架的進階框架是很是好的了

後面的這幾個都是企業級框架

express =》koa 以後,最大的問題就是開發項目的時候缺乏約束,單人開發還好,多人的時候,各類目錄結構,各類包的選擇,百花齊放的代碼風格。都是團隊開發頭疼的事情。

由於本人以前作過php開發,laravel框架的使用起來很舒服(優雅!),還有配套的laravel-admin。因此一直想找一個能像laravel這樣的node框架提升開發效率

回到正題,sails , loopback, thinkjs, egg 都是企業級框架,咱們又該如何選擇

Sails 是基於 exrpess 的大而全的框架,MVC框架,旨在模擬熟悉的Ruby on Rails框架的MVC模式,但支持現代應用程序的需求。捆綁了一個強大的ORM,即Waterline。自動生成的REST API

LoopBack 是創建在 Express 基礎上的企業級 Node.js 框架,只需編寫少許代碼就能建立動態端到端的 REST API,一致化的模型關係和對 API 訪問的權限控制等

ThinkJS 是國內360團隊推出的一款面向將來開發的 Node.js 框架,整合了大量的項目最佳實踐,讓企業級開發變得如此簡單、高效。框架底層基於 Koa 2.x 實現,兼容 Koa 的全部功能

Egg.js是《阿里旗下產品》基於Node.js 和 Koa的一個Nodejs的企業級應用開發框架,它能夠幫助開發團隊及開發人員下降開發和維護成本。Egg.js則是按照約定進行開發,奉行『約定優於配置』,具有提供基於Egg定製上層框架的能力、 高度可擴展的插件機制、內置多進程管理、基於Koa開發,性能優異、框架穩定,測試覆蓋率高、漸進式開發、開發成本和維護成本低等特色。

相關文章
相關標籤/搜索