Express會被Koa2取代嗎?


不會。2種風格而已。就好比react會被vue取代么?java會被node取代么?


1、先說結論

目前沒有看到Express會被koa2取代的跡象。

目前來說,Express的生態更成熟,入門門檻相對較低。不過koa2的亮點足夠吸引人,生態也開始變得完善。

2、從使用門檻來說

從使用上來說,Express對初學者更有好些,對著官網修修改改改就能做點東西出來。

koa2入門門檻比Express高些,更精簡的內核帶來的小問題就是,對使用者搭積木的能力要求更高了,畢竟連核心的路由功能都去掉了。

更不要說koa2中最吸引人的async/await,很多初學者promise都搞不明白,async/await用起來一頭霧水,koa2最精華的部分之一就派不上用場了。

3、從大趨勢來說

node社區壯大後,參與node服務端編程的同學會越來越多。屆時,對服務端框架的要求會越來越高,那個時候就是各種企業級解決方案們的戰場了。核心很有可能還是基於Express或者koa2,或者其他的。

至於Express和koa2,還是會繼續有很大的市場,那個時候版本不知道是多少。

4、後話

Express、koa2略有小研究,常年分享周邊科普文,歡迎關注 我的SegmentFault博客,或者star 《Nodejs學習筆記》


不說別的,光看在前端工具中的應用比如webpack等,express就佔了壓倒性優勢,只這一塊就保證了express不會被koa取代。


個人想的多一點,請問題主是否在考慮學習 or 深入學習其中之一?

如果是這樣的話,那麼建議都試試,兩個都很是很好的框架。

如果不是,而僅僅是討論類似A和B誰更漂亮這種話題,不予置評。


express並沒有那麼不好。體驗主要是差在回調函數吧。其實express也可以直接上async await啊,寫個函數包裹起來就可以了。體驗還行。就是要每次都要import這個函數。express也可以不用寫回調函數了。


Koa2 和Express 本來就差不多,Express不會被取代,但我更喜歡用Koa2


應該不會。express用的是回調callback,一開始用感覺其實還好,但代碼量一大就很頭疼了,koa2用async和awit來完成同步,看起來比較省心,但express的npm太多了,肯定沒法取代,就算koa2可以轉回調函數,也是很麻煩的事,而且兩種框架都是很輕量級的,都是node.js框架,只是寫法不太一樣……


你要相信這個世界上知道callback的人async await的人多多了,就像為啥jquery的star比react vue低那麼多呢,因為大多數jquery開發者根本不知道啥是github啊QAQ,就算知道了async await又怎麼樣,她們還是喜歡callback= =


什麼叫做取代?都用koa開發沒人用express開發算取代嗎?這種問題沒多大意義的。

就現在商用的來說,express絕對要比koa2多得多。express也可以完全改造為async的方式。並且express有著比koa2更多的中間件 社區資源。

不過從個人角度,自己的項目還是用koa2搭建的,就是喜歡追新的。


推薦閱讀:

如何系統地學習 Express?
nodejs怎麼部署能hold住訪問量較大的項目?

TAG:Web開發 | Nodejs | Express框架 | koa |