最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

nest.js,egg.js,midway,express,koa的區(qū)別小結

 更新時間:2023年05月28日 15:50:10   作者:csdn_haow  
本文主要介紹了nest.js,egg.js,midway,express,koa的區(qū)別小結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

隨著nest.js框架逐漸火起來,對于沒有接觸過nest的小伙伴可能會疑惑nest是什么?在你了解了nest.js是什么的前提下,你可能會疑惑nest.js與傳統(tǒng)的koa、express有什么區(qū)別?針對這兩個問題,結合了網上的一些文章,做一個簡單的總結。

nest是什么?

nest的定義是一個漸進式的Node.js框架,用于構建高效,可靠和可擴展的服務器端應用程序;不要問我為什么要放圖,據(jù)說放圖可以提高訪問量。

nest是一個封裝了node的有規(guī)范的框架,什么是有規(guī)范?意思是必須按照它制定的一套規(guī)則來寫代碼,否則程序就會無法運行。上手成本稍高一點,但是后期維護與擴展會很方便。

nest屬于前端ts大趨勢下深度使用注解特性并提供各種增強開發(fā)體驗的框架,它提供了一套完整的解決方案,包含了認證、數(shù)據(jù)庫、路由、http狀態(tài)碼、安全、配置、請求等開箱即用的技術。

nest.js與koa、express有什么區(qū)別?

koa是一個擁有洋蔥模型中間件的http處理庫,一個請求,經過一系列的中間件,最后生成響應。Koa的大致實現(xiàn)原理:context上下文的保存和傳遞,中間件的管理和next方法的實現(xiàn)。

大概過程:我們koa常用的app.use方法就是將一系列中間件的方法存進了一個數(shù)組,app.listen底層用http.createServer(this.callback())進行封裝,傳進createServer的回調函數(shù)通過compose來處理中間件集合(就是遞歸遍歷中間件數(shù)組的過程),通過req,res(這兩個對象封裝了node的原生http對象)創(chuàng)建上下文,并返回一個處理請求的函數(shù)(參數(shù)是上下文,中間件集合(類似一個鏈表))。

區(qū)別

koa本身幾乎不帶任何其他的庫,如果需要使用路由、錯誤處理、認證等功能需要自己安裝并引入,什么都需要自己DIY。而使用nest.js時就不需要考慮這些問題了,依賴注入,pipe,guard,interceptor等機制,基本覆蓋各種開發(fā)需要,開箱即用。

koa常常與express一起比較,都是偏底層的無態(tài)度的Web框架;而nest.js應該和egg.js,midway這種框架比較。egg.js源于阿里,它的企業(yè)級規(guī)范很多,但各方面能力極強,定位是框架的框架,其再上一層還有midwayjs,完全兼容ts,支持注解,一點都不輸與Nest;此外國內做企業(yè)級NodeJS框架的越來多啦,比如剛出來的daruk等,用過Java Spring 框架和 Angular的同學會發(fā)現(xiàn)NEST借鑒了兩者很多的特性。

egg.js是在koa的基礎上做了一層很好的面向大型企業(yè)級應用的框架封裝,現(xiàn)在也有了非常好的TS特性支持。egg.js更多的是按照洋蔥模型的開發(fā)方式,和AOP編程還是有點區(qū)別的。而nest配合TYPEORM可以在node下?lián)碛胁惠擲PRING的面向切面編程的體驗~

中小型項目推薦egg.js,上手快,概念易懂;大型項目不妨試試NEST.js+typeorm。如果你需要使用一些技術,例如認證、數(shù)據(jù)庫等支持,那么你可能得去搜索、折騰一番,才能知道搭配哪個庫,才行。

到此這篇關于nest.js,egg.js,midway,express,koa的區(qū)別小結的文章就介紹到這了,更多相關nest.js,egg.js,midway,express,koa內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • nodejs調取微信收貨地址的方法

    nodejs調取微信收貨地址的方法

    這篇文章主要為大家詳細介紹了nodejs調取微信收貨地址的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • nodejs中使用HTTP分塊響應和定時器示例代碼

    nodejs中使用HTTP分塊響應和定時器示例代碼

    本文通過示例將要創(chuàng)建一個輸出純文本的HTTP服務器,輸出的純文本每隔一秒會新增100個用換行符分隔的時間戳。實例代碼非常不錯,具有參考借鑒價值,需要的朋友參考下
    2017-03-03
  • nodejs中使用多線程編程的方法實例

    nodejs中使用多線程編程的方法實例

    這篇文章主要介紹了nodejs中使用多線程編程的方法實例,本文使用nodejs addon借助c/c++的能力擴展nodejs多線程編程,需要的朋友可以參考下
    2015-03-03
  • 深入Node TCP模塊的理解

    深入Node TCP模塊的理解

    這篇文章主要介紹了深入Node TCP模塊的理解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • 使用nvm安裝node的詳細圖文教程

    使用nvm安裝node的詳細圖文教程

    nvm是nodejs的版本管理工具,可以在一個環(huán)境中同時安裝多個nodejs 版本(和配套的 npm 版本),并隨時切換,下面這篇文章主要給大家介紹了關于使用nvm安裝node的詳細圖文教程,需要的朋友可以參考下
    2023-02-02
  • Node.js中require的工作原理淺析

    Node.js中require的工作原理淺析

    這篇文章主要介紹了Node.js中require的工作原理淺析,通過分析node.js的源碼得到本文,需要的朋友可以參考下
    2014-06-06
  • 如何在Node.js中使用async函數(shù)的方法詳解

    如何在Node.js中使用async函數(shù)的方法詳解

    這篇文章主要為大家介紹了如何在Node.js中使用async函數(shù)的方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • nodejs中使用monk訪問mongodb

    nodejs中使用monk訪問mongodb

    最近在做nodejs的web開發(fā),初次接觸到mongoDB這個數(shù)據(jù)庫。分享點使用經驗
    2014-07-07
  • 詳解node.js 下載圖片的 2 種方式

    詳解node.js 下載圖片的 2 種方式

    本文通過實例代碼給大家介紹了node.js 下載圖片的 2 種方式及下載遠程圖片的實現(xiàn)代碼,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2018-03-03
  • Windows系統(tǒng)下安裝Node.js的步驟圖文詳解

    Windows系統(tǒng)下安裝Node.js的步驟圖文詳解

    這篇文章主要給大家介紹了Windows系統(tǒng)下Node.js的安裝教程,Node.js是用于后端編程的JavaScript框架,文中給出了詳細圖文介紹,有需要的朋友可以參考下,下面來一起看看吧。
    2016-11-11

最新評論

金塔县| 望奎县| 嘉禾县| 宝清县| 沙河市| 大渡口区| 合水县| 甘南县| 溆浦县| 左权县| 吉木萨尔县| 岢岚县| 博乐市| 武安市| 永清县| 辛集市| 灵璧县| 孙吴县| 鸡东县| 视频| 额济纳旗| 和田市| 瑞金市| 舒兰市| 黔西县| 西宁市| 沅陵县| 印江| 当涂县| 来安县| 连江县| 普格县| 伽师县| 崇文区| 赤城县| 长泰县| 元氏县| 外汇| 来安县| 尖扎县| 黔西|