這本書是為 Node.js 初學者設計的入門教材,也是一份幫助你從零開始、逐步建立實作能力的學習指南。
每個章節都從基本觀念開始,帶你一步步走到能寫出一段完整、能運作的小程式。在閱讀過程中,你會學到:
-
如何用 Node.js 建立基本的 Web 應用程式
-
如何用 Express.js 架構 RESTful API
-
如何整合 HTML5 和前端框架,完成簡單的 Fullstack 架構
-
如何用 WebSocket 和 JSON 實作即時雙向資料傳輸
-
如何使用 MongoDB 儲存資料,並結合 Mongoose 建立資料模型
本書採用清楚的步驟式教學,並搭配語意導向的說明,幫助你了解每一段程式碼背後的設計邏輯。本書的理念,不是教你背熟語法,而是讓你具備基礎的程式設計思考力:能夠拆解問題、設計資料流程,並寫出能解決實際需求的應用程式。
而是一本實務導向的 Node.js 入門教科書,跟著章節動手做,你會開始習慣查資料、讀官方文件,甚至能理解許多進階開發者的實戰經驗分享。如果你準備開始了,我們就從 console.log("Hello World")
開始吧。
寫程式的修煉是本書的宗旨,也是一直以來我做培訓的理念。這份教材使用在我的培訓課程,內容多以步驟化方式引導入門,但更重要的是,希望在 zero-to-one 的過程,培養「Thinking」的能力,而不是只學習如何照本宣科地寫程式。有了 Thinking 的能力後,會有另一個重要的收獲:能開始閱讀豐富的網路文件,還能在拜讀優質電子書的過程中,對大神分享的內容產生共鳴。
Jollen(陳俊宏),Moko365 Inc 創辦人暨講師、Mokoversity Inc 開放創新學院創辦人與 Devify Inc 發起人。興趣是 Web Fullstack 技術、Android Framework、Linux 驅動程式、軟體架構設計、研發管理與產品規劃。近期的研究計畫有 WoT.City、DevifyPlatform 與 Flowchain,目前參與 2 個 Blockchain 相關新創團隊。
- Email:jollen@jollen.org
- Blog:http://www.jollen.org/blog
- Github:https://github.com/jollen
- 預計 2025 年 6 月完成(已完成)
- 預計 2025 年 6 月電子書上市(已上線)
- 改版要點
- 簡化文字描述
- 更新與刪除過時內容
- 更新 JavaScript 範例片斷(ES5/ES6)
- 補齊遺漏內容
- 調整排版(電腦書編排)
- 2025-05-18:開始進行第 4 版改版工程
- 2016-10-04:開始進行第 3 版改版工程
- 2015-12-23:開始進行第 2 版改版工程
- 1.1 Object
- 1.2 宣告 Class
- 1.3 使用 Factory Pattern
- 1.4 Constructor Pattern
- 1.5 Design Pattern for Front-End
- 1.6 Module Pattern
- 1.7 jQuery Pattern
- 1.8 選擇器模式
- 1.9 Prototype Pattern
- 1.10 其它模式
- 2.1 HTML5 的 Runtime 是瀏覽器
- 2.2 從 Chrome 瀏覽器談起
- 2.3 Web Fullstack 軟體開發的概念
- 2.4 JavaScript 也能開發雲端服務
- 2.5 Data Push 設計模式
- 2.6 Device API 的革命時代
- 2.7 重要的資訊交換格式:JSON
- 3.1 Hello, World
- 3.2 製作 Node.js 模組
- 3.3 URL Routing
- 3.4 設計 HTTP API
- 3.5 解析 Query String
- 3.6 Node.js 語法標準
- 4.1 第一個 WebSocket 伺服器
- 4.2 學習 JSON 格式
- 4.3 製作 WebSocket 用戶端
- 4.4 使用 jQuery 模式
- 4.5 使用 this 物件
- 5.1 Lambda
- 5.2 Callback Function
- 5.3 從 TypeScript 談起
- 5.4 使用 Promise 封裝非同步處理流程
- 5.5 async/await:語意同步化
- 6.1 再探 HTTP API
- 6.2 REST
- 6.3 REST + JSON 範例
- 7.1 認識 Non-blocking IO
- 7.2 非同步式讀取多個檔案
- 7.3 深入 Node.js 非同步錯誤處理
- 8.1 Express.js 初體驗
- 8.2 MVC 與 HTML Template Engine
- 8.3 解析 app.js
- 8.4 Express URL Routing
- 8.5 Middleware 的觀念
- 9.1 Express.js 初體驗
- 9.2 MVC 與 HTML Template Engine
- 9.3 解析 app.js
- 10.1 服務導向架構
- 10.2 關於 SOA 與 3-Tier 架構
- 10.3 Presenetation 在 Client 端
- 10.4 Express.js 與 REST API
- 10.5 Node.js Chat Client
- 10.6 WebSocket 即時推播
- 11.1 呼叫 REST API - 使用 jQuery
- 11.2 認識 Key-Value Pairs 觀念
- 12.1 Backbone Way
- 12.2 認識 View.$el
- 12.3 認識 Backbone.Model
- 12.4 認識 Backbone.Model.fetch
- 12.5 認識 Backbone.Model.save
- 13.1 關於 MongoDB
- 13.2 安裝 MongoDB 資料庫伺服器
- 13.3 使用 Mongoose Driver
- 13.4 CRUD 實作
- A 練習用專案
感謝 @Hierom、@benshiue 提交的貢獻與協助錯誤修正。
<img alt=“創用 CC 授權條款” style=“border-width:0” src=“https://i.creativecommons.org/l/by-nc/4.0/88x31.png” />
本著作係採用創用 CC 姓名標示-非商業性 4.0 國際 授權條款授權