iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 19
0
Modern Web

從零開始認識 Node.js系列 第 19

[Day 19] 動手篇 - Koa is coming

Koa

Koa 是什麼?

若請 Node.js 的愛好者推薦 Framework ,我想 Express 會受半數以上的人推薦或提到,而在 Github 也有許多的 Example 是使用 Express ,那麼 Koa 是什麼?

Koa 官方 Github 裡有一篇 Koa vs Express ( 還在編輯 ) 文件裡大致說明了 Koa 與 Express 的不同,若沒時間看過內容,我截裡面一段重點的出現就可以一目了然 ( 如下表 ),

http://ithelp.ithome.com.tw/upload/images/20161218/20102342IBX0P10nyF.png

上表的結論,安裝 Express 前置作業完成 85%,安裝 Koa 前置作業 60%;這感覺就好比 Express 給一輛車,加油就可以上路; Koa 給一臺 50 cc 小綿羊,一樣加油就可以上路;然而 Express 我在 [Day 15] API 尋寶記 - 現代人離不開的 HTTP 的 Framework 中提到更新與背後技術團隊支持都呈現疲態,讓其的發展變得悲觀,反之 Koa 背後技術團隊是原 Express 核心成員參與其中,如 TJ HolowaychukJonathan Ong 大大都在名列其中。

為何選擇 Koa ?

原因有幾個,

  1. 碰過幾次 Express ,想換個新的 Framework 試試
  2. Koa 給核心,表示其他要想辦法找資源組成自己要的樣子
  3. 持繼有更新且看得見下一版出現 ( Koa v2 明確再等 async/await 正式推出才會脫離開發階段 )
  4. 這次實作以後端為主

以上是我選擇 Koa 的原因,至於未來會不會用 Express 呢?不會!我會用 Koa 或 Sails.js ;原因是前者熟悉組合後,開發上不比 Express 差,後者則是建築在 Express 上,另成一個生態且提供更完整的 Framework ,省更多心思在環境上。

參考資料

  1. berwin - 深入浅出 Koa
  2. berwin - 深入浅出 Koa2
  3. Koa v2 Guide
  4. is express dying?

上一篇
[Day 18] 動手篇 - Line Bot 準備
下一篇
[Day 20] 動手篇 - Koa is working
系列文
從零開始認識 Node.js31

尚未有邦友留言

立即登入留言