10+ 最佳的 Node.js 教程和實例

2022-01-01 菜鳥要飛

如果你正在找Node.js的學習資料及指南,那麼請繼續(閱讀),我們的教程將會覆蓋即時聊天應用、API服務編寫、投票問卷應用、人物投票APP、社交授權、 Node.js on Raspberry Pi等等。

以下是Node.js入門的簡單介紹,如果你對Node.js略有了解可以直接跳過此部分。


那什麼是Node.js呢?

Node.js是迄今運用最多的服務端JavaScript運行時環境,使用JavaScript開發跨平臺的實時WEB應用。

Node.js基於Google的V8 JavaScript引擎。基於事件驅動,非阻塞的輸入輸出模型,這也使得其高效而輕量。

Node.js的強大之處在於其能力支持數據密級性的交互應用,因為這類應用的函數圍繞著用戶事件,數據I/O和數據流的處理。對於JSON的API,Node.js同樣顯得很神奇,它是單頁WEB應用的心臟和靈魂。

Node.js的流行程度可以感覺得到,像eBay、target、City Group、Sony、Uber、LinkedIn、Medium、Netflix等等的大公司都有在他們的web項目中應用。

怎樣學習Node.js呢?


Node.js的開發者來自全球,他們用Node.js開發複雜交互的,數據密集型的WEB Apps和網站。同時網上有著大量的資源和教程教你怎樣構建自己的Node.js應用。

我們不防看看Node.js大神針對Web Apps寫的Node.js最佳指南。

我們所覆蓋的指南將包括針對初學者的Node.js、中級指南,同時還有教你怎樣構建複雜的Node.js項目。

對於完全的Node.js初學者,  在深入挖掘本文章後續提到的學習項目之前,一步步按照airpair.com上面入門指南的要點 或 Node.js入門指南 之類的文章學習是不錯的選擇。Nodeschool.io是另一個比較好的網站,上面有著非常多的資料,可以學習基本的node.js及相關的技術。

通過Express框架和Socket.io構建即時通訊APP

將一個新技術學到一定高度的最好方式就是通過功能性的應用了。在這個指南中,你將學習使用Express框架和Socket.io構建即時通訊應用,這些技術可以使用基於事件的雙向通信。在這個指南中,你還將使用JavaScript模板引擎Jade。

我們要介紹的指南由Krasimir Tsonev所撰寫,發布在tutsplus.com上面,從node.js的環境搭建,使用Express框架的後端服務,到最後使用Jade模板引擎的前端UI開發,覆蓋了所有前端到後端的方方面面。

你可以在後面這個連結中找到這篇指南:  即時通訊(Node.js Tutorial – Real Time Chat) .

使用Swagger創建Restful API

這個精心設計的教程解釋了如何使用Swagger來創建REST API,並且包括了Rest API應該支持的所有操作(CRUD,創建,查詢,更新,刪除)。這個例子是由來自scotch.io的Samuela Zara提供的,它實現了管理電影集合的Rest API。

Swagger是一個非常強大的框架來描述REST APIs,它提供了交互式的API文檔編輯,客戶端sdk生成以及發現服務。通過使用Swagger,你所書寫的API將更容易被大家所理解並且使用。

在這個教程中,Samuela一開始先教會大家如何安裝node.js的Swagger模塊,然後介紹了Swagger提供的模擬模式。通過這個模式,API開發者可以先集中精神進行API本身的設計,而不用寫一行的代碼。當這個API結構被設計完成之後,教程開始帶領大家具體實現獲取電影,增加/修改電影以及刪除電影的操作。

你可以通過Restful API in Node.js using Swagger這個連結來訪問該教程。

在 Node.js 中使用 Nodal 建立 API Services


在大多數模塊和框架之上,你就不會需要再建立任何簡陋的 JavaScript/Node.js 項目。為了多平臺(移動端,web,IOT)產品開發,面向服務的架構是關鍵的,而本教程就將帶你更進一步。

在本教程中,Keith Horwood 利用 Nodal 框架在 Node.js 中來創建 API services,並讓這一切看起來極其簡單。Nodal 是一個可擴展的,以意見為依據的全服務框架,它幫助數據中心加快在 Node.js 基礎上的API創建。

在本教程中,你將會在開發 MVC (模型,控制器和視圖)之前安裝 node.js 環境,安裝 Nodal 和 postgreSQL。

你可以在這裡找到本教程: 在 Node.js 中使用 Nodal 建立 API Services.

Node.js Apps – 使用通行證進行社交認證


社交認證幾乎隨處可見,因為我們絕大多數人在Facebook 、Twitter和Google這樣的某個社交網絡上都有自己的帳號。社交網絡認證的工作過程是使用已有的社交網絡證書進行單點登錄,同時可以登錄到其它的程序。

在本教程中,你會構建一個簡單的Node.js程序,通過使用通行證作為中間件使用社交認證進行登錄。本教程由Agraj Mangal編寫,發表在tutsplus.com網站上。

要獲得本教程可訪問連結Node.js Apps – Social Authentication with Passport.

使用Rethink DB和Node.js開發投票App


本教程主要針對的是對Node.js有基本理解的初學者。在本教程中,你能通過開發一個簡單的投票app學習Node.js,該程序給用戶提供投票的三個選項,並提供投票人數的實時更新。

Angular和angural素材設計庫用於程序的前端設計,Node.js用於伺服器端,rethink DB用來存儲投票數據和相關聯的用戶數據。

通過編寫完成這樣一個簡單的程序,你就可以掌握創建整個程序的方方面面。

要獲得本教程可訪問- Polling App using Rethink DB and Node.js.

使用React、Node.js、MongoDB、Socket.IO開發一個角色投票App


這是高級程式設計師必須要讀的教程,當然,它不屬於初學者學習的最容易的例子。這是一篇由Sahat Yalkabov編寫的經過精心組織的教程,目的是為多人在線遊戲(Eve Online)開發一個角色投票應用,這簡直就是一個功能完整的項目。Eve Online是一個多人在線遊戲,每個玩家都有一個3D形象來代表他們的角色。

本教程包括使用Node.js框架構建REST API,使用MongoDB保存和檢索數據,使用Socket.io實時跟蹤在線的訪問者,使用React(和Flux)進行服務端的渲染,最後將程序布署到雲端。在本教程中,你能夠開發完成一個為Eve Online進行角色投票的app,能以一種有趣好玩的方式學習到多項技術。

要獲得本教程可訪問-Character Voting App – Node.js, React, MongoDB and Socket.io

使用 Node.js 和 Reactive.js 的 WI-FI 儀錶板


這個教程是由 Marcello La Rocca 在 Sitepoint.com 上編寫的,適合中級的 Node.js 編程者。Marcello 的引領來自之前的系列教程,它還引導建立了一個儀錶板添加更多關於周圍可連接 Wi-Fi 的信息。

在這個教程中,你實現的伺服器運行在Ubuntu上,做一點小修改也可以運行在windows和mac上。伺服器實現的擴展來自於 Marcello 之前的教程 - 使用 Node.js創建電池。實現伺服器搭建之後,你編寫客戶端和用戶接口並使用HTML模板給當前的 Wi-Fi 列表。

你可以找到這個教程 使用 Node.js 和 Reactive.js 編寫 WI-FI 儀錶板。

測試驅動的開發 – Node.js 和 Mocha

這篇由Semaphoreci.com提供的教程將交會你如何使用Mocha來進行單元測試和集成測試。

Mocha是一個JavaScript測試框架,它既可以運行在瀏覽器中,也可以運行在Nodejs環境中。Mocha將按照順序執行所有的測試,並將出現的未捕獲異常映射到相應的測試用例上。

你可以通過使用npm來引入mocha模塊。這個教程中的例子實現了一個顏色轉換程序,這個程序將RGB轉換成16進位形式。這個教程還創建了一個web伺服器來測試異步代碼。

你可以通過下面的連結Test Driven Development – Node.js and Mocha找到這個教程。

在樹莓派上使用Node.js


這篇Node.js教程是」在創造中學習」(learning through making)系列的一部分,該系列由Dave Johnson編寫,發表在thisdavej.com網站上。通過本教程,你能學會在樹莓派2和樹莓派3上安裝Node.js。本教程自始至終主要關注的是在樹莓派上安裝Node.js。 學完本教程後,你可以進一步學習本系列中的其它教程,以便學會在樹莓派上使用Node.js,教程包括「探索使用Node.js在樹莓派上創建網際網路web伺服器」和「不用編碼而只使用node.js創建web伺服器」。

要獲得本教程和其它相關的教程可訪問Node.js on Raspberry Pi。

Node.js教程:開發情緒分析應用


這是另一篇優秀的教程,由Scott Rich編寫,發表在IBM developerWorks上。本教程使用Node.js, Express框架, Sentiment模塊和ntwitter模塊開發了一個基於推特進行情緒分析的小型程序。 在本教程中,你將學習設置express框架,運行並測試hello Node.js程序,以確保框架工作正常,為程序添加情緒分析功能,並將程序連接到twitter,最後將它們整合在一起,以形成一個功能完整的程序。

在Twitter Sentiment Analysis App in Node.js上可以找到這篇教程。

結論


Node.js是有魔力的,它承諾可以讓用戶很容易地進行實時交互程序和Restful APIs的開發。網絡上有很多Node.js教程,有免費的也有需要付費的。當然,你可以花費時間去搜索那些教程,並通讀它,最終學會用Node.js開發殺手級的App和API。但是,俗話說,時間就是金錢。本文提供了node.js例子教程,就是想為你節省時間。

更好的節省時間的方式是從第一天開始就要正確的選擇Node.js教程。本文提及的Marcello, Sahat Yalkabov, Keith Horwood和其他的一些作者都是Node.js領域的專家,曾編寫《可靠的Node.js實例教程》。培養興趣,和偉大的Node.js一起前行吧。

小編推薦

傳智播客就業班node.js視頻教程

 來源:http://www.oschina.net/translate/best-nodejs-tutorial-with-examples

相關焦點

  • 10+ 最佳的 Node.js 教程結合實例
    同時網上有著大量的資源和教程教你怎樣構建自己的Node.js應用。我們不防看看Node.js大神針對Web Apps寫的Node.js最佳指南。我們所覆蓋的指南將包括針對初學者的Node.js、中級指南,同時還有教你怎樣構建複雜的Node.js項目。
  • Node.js 學習資料和教程(值得收藏)
    的buffer類利用libuv編寫異步多線程的addon實例Node.js中exports與module.exports的區別Node.js http 管道拒絕服務漏洞Node.js高級編程百萬級並發 Node.js也能行高性能Node.js:來自LinkedIn Mobile的10條優化建議Kraken:改變PayPal開發文化的Node.js框架Groupon拋棄Rails,轉向
  • 專門針對初學者的Node.js教程
    Node.js的教程並不缺乏,但有大部分教程針對已有Node.js基礎的開發者。「我已下載了Node.js,可我如何開始呢?」以下教程是專門針對Node.js初學者,文中將通過實例分享,一步步教你如何開始Node.js之旅。  什麼是Node.js?
  • Node.js安裝教程
    /Win8/Win10[Node.js15.11.0下載連結]:https://wwa.lanzoui.com/node15[Node.js14.16.0下載連結]:https://wwa.lanzoui.com/node14Node.js是一個基於Chrome V8引擎的JavaScript運行環境,讓JavaScript運行在服務端的開發平臺,使JavaScript
  • nodejs 中文分詞模塊 node-segment
    >console.log(segment.doSegment('這是一個基於Node.js的中文分詞模塊。')), p: 2048 } ] 其中 w 表示詞的內容,p 表示詞性(具體參考 https://github.com/leizongmin/node-segment/blob/master/lib/POSTAG.js 中的定義) 2、詞典格式 詞典文件為純文本文件,每行定義一個詞,格式為: 詞|詞性|詞權值 ,如:工信處|0x0020|100
  • Node.js中的進程與線程
    這代表著主進程和子進程共享標準輸入和輸出:let childProcess = spawn("node",['sub_process.js'], {  cwd: path.resolve(__dirname, "test"), // 找文件的目錄是test目錄下  stdio: [0, 1, 2] });可以在當前進程下列印
  • centos7編程實踐:安裝nodejs
    由於最近項目的需要,我需要在centos7上安裝nodejs,故總結這份教程,希望能幫助需要的同學。一、nodeJS簡介1、Nodejs是什麼?2、node.js的優勢2.1、Nodejs語法完全是js語法,只要你懂js基礎就可以學會Nodejs後端開發Node打破了過去JavaScript只能在瀏覽器中運行的局面。
  • 10 個最適合 Web 和 APP 開發的 NodeJS 框架
    讓我們來看看目前可用的最好、最強大的 NodeJS 框架,並幫助你建立實時的、各種規模和複雜性的可擴展 Web 應用程式 1. Node.js Express 對於一個已經在使用 node.js 的開發人員來說,Express 或者」node.js express」並不是一個新鮮事。
  • 推薦一些Node.js超好用的工具庫
    首先明確一下庫和框架的區別:一般而言,一個工程中可以使用多個庫,但只能使用一個框架,本文只推薦庫,不涉及Express, egg.js, Koa 這類框架。,寫入 文件和文件夾的方法。開源地址:https://github.com/axios/axiosnodemailernodemailer是我用過最好用的 node.js 發郵件庫,上代碼!
  • 從零開始的Wiki.js部署教程 | 我的目標是讓所有人讀懂
    吶,大家好,我是暌違已久的星臨,今天給大家帶來的是Wiki.js最簡部署教程!想寫這個教程的初衷也很簡單:市面上其他的部署教程都太爛了!簡潔點的教程操作起來都是坑,複雜點的又讓人望而卻步。有的東拐西拐,讓人不明所以。所以吶,今天這篇教程,簡潔的簡潔,複雜的複雜,該拓展的地方我都會單獨說,讓各位都能有所獲!前幾天看一篇教程,那個博主的論調是:自動化腳本是給殘疾人用的,要來就來全手動。
  • 7天學會NodeJS!
    大家好,我是零一,今天分享一個開源免費的Node教程資料 《7天學會NodeJS》,它出自於阿里巴巴國際站前端技術部Node中文官網教程:http://nodejs.cn/learn/introduction-to-nodejs都有Node官網教程了,為什麼還要看別人的資料
  • Node.JS快速入門
    我們在命令提示符下輸入命令node demo1.js ,結果如下:2.2 使用函數我們剛才的例子非常簡單,咱們這裡再看一下函數的使用:我們在命令提示符下輸入命令node demo2.js ,結果如下:>2.3 模塊化編程創建demo3_1.js創建demo3_2.js2.4 創建web伺服器創建demo4.jshttp為node內置的
  • Linux Foundation 提供的免費 Node.js 教程
    Node.js 以其速度、輕量級的足跡和輕鬆擴展的能力而備受推崇,使其成為微服務架構的首選。Node.js 的使用和吸收速度穩步增長,市場一直在渴求更多具備使用該技術知識和技能的人才。然而,對於那些想要開始學習 Node.js 的人來說,學習路徑並不是很清晰。
  • 實戰:在Node.js和Vue.js中構建文件壓縮應用程式
    前提要繼續學習本教程,你需要具備以下條件:熟悉HTML,CSS和Javascript(ES6 +)設置項目我們將從構建後端開始,這是我們應用程式的基礎。在開始之前,我們先創建一個 .gitignore 文件,並向其中添加 node_modules,這將防止將node_modules 文件夾添加到git中。
  • Node.js 入門你需要知道的 10 個問題
    libuv 庫是 I/O 操作的核心部分,例如讀取文件和 OS 交互。關於 Libuv 的學習,可以參考 libuv中文教程V8 引擎來自於谷歌:「V8 是谷歌開源的高性能 JavaScript 引擎」,使用 C++ 開發,並在谷歌瀏覽器中使用。
  • Node.js 原生開發入門完全教程(上)
    node和npm的版本,說明Node.js安裝成功。;liyuechun:nodejs入門 yuechunli$ node helloworld.js Hello World!liyuechun:nodejs入門 yuechunli$ 命令解釋:ls:查看當前路徑下面的文件和文件夾。
  • Node.js 入門到幹活,10 個項目就夠了
    Node.js 入門到幹活,10 個項目就夠了 Node.js 在很多大公司都有不錯的實踐,比如:淘寶、天貓 Web 版,很多頁面都是在 Node 伺服器上渲染的。還有各種腳手架、前端打包發布工具、構建生態的小工具,也基本都是 Node.js 編寫的。
  • 使用Chrome DevTools有效調試Node.js
    本文介紹如何使用最新的Google Chrome DevTools高效地調試Node.js程序。請繼續閱讀,並閱讀關於Chrome DevTools的節點調試是識別和消除軟體應用程式中的錯誤的任務,它不僅僅是在代碼中列印出值。本文介紹如何使用最新的Google Chrome DevTools高效地調試Node.js程序。
  • Node.js模塊化你所需要知道的事
    at REPLServer.onLine (repl.js:533:10)複製代碼現在,可以嘗試把需要引用的find-me模塊放在上述的任意一個目錄下,在這裡我們創建一個node_modules目錄,並創建find-me.js文件,讓Node.js能夠找到它:~/learn-node $ mkdir node_modules
  • Node.js 8 重要功能和修復全解析 - OSCHINA - 中文開源技術交流社區
    5月30日12點,Node.js 8正式發布了,這個版本具有一系列新功能和性能改進,並且這些功能和改進將獲得長期支持(LTS)。下面就來介紹Node.js 8版本中最重要的功能和修復。Node.js 8將從2017年10月起,正式成為當前的LTS版本,並持續到2019年12月31日。這也意味著Node.js 6版本將在2018年4月進入到維護模式,並在2019年4月結束維護支持。