Node.js 因為使用了 Google 的 V8 引擎,所以具有高性能、高并發(fā)的特點,尤其適合聊天等即時應(yīng)用的處理。Node.js 使用 JavaScript 編程語言,有利于快速入門學(xué)習(xí)。
本書分為 10 章,從邏輯上分為四個部分。
第一部分為基礎(chǔ)篇(第 1~7 章)。
該部分介紹了 Node.js 及 JavaScript 語言的基礎(chǔ)知識、Node.js 的文件管理模塊、網(wǎng)絡(luò)開發(fā)模塊、訪問 MongoDB數(shù)據(jù)庫模塊、分布式模塊。通過學(xué)習(xí)讀者將掌握 Node.js 及 JavaScript 語言開發(fā)的基礎(chǔ)知識。
第二部分為 Express.js 框架篇(第 8 章)。
該部分介紹了 Node.js 的 Express.js 框架,包括框架的路由、中間件、模板引擎、錯誤處理、調(diào)試、靜態(tài)文件等模塊。
第三部分為 Koa.js 框架篇(第 9 章)。
該部分介紹了 Node.js 的 Koa.js 框架,框架的級聯(lián)、設(shè)置、錯誤處理、上下文、中間件、路由等模塊。
第四部分為實踐篇(第 10 章)。
該部分介紹了前端 Vue.js 框架,并使用前端 Vue.js 框架和后端 Express.js 框架,數(shù)據(jù)庫為 MongoDB 的前后端分離項目。該項目還具有基本的 MVC 三層架構(gòu)。
本書適合有一定 Web 開發(fā)基礎(chǔ)的 Node.js 初學(xué)者學(xué)習(xí),同樣也適合高等院校和培訓(xùn)機(jī)構(gòu)相關(guān)專業(yè)的師生作為教學(xué)參考用書。
司明岳, “小明菜市場”公眾號主編,阿里云社區(qū)專家,GitChat專欄作者,開源社區(qū)的參與者與推動者,參與開發(fā)多個開源項目。在IT公司負(fù)責(zé)前端設(shè)計、后端研發(fā)、數(shù)據(jù)庫研發(fā)、小程序開發(fā)等多個項目的策劃與交付,以及后期的運營和維護(hù),對JavaScript語言和Node.js有著較為深入的研究。
第 1 章 Node.js 概述 1
1.1 Node.js 簡介2
1.2 Node.js 的發(fā)展歷史和特點 3
1.3 Node.js 應(yīng)用場景 7
1.4 Node.js 與 V8 引擎 9
1.5 本章小結(jié) 11
第 2 章 開始 Node.js 之旅 12
2.1 搭建開發(fā)環(huán)境 13
2.2 Node.js 包管理詳解 26
2.3 使用 Node.js 操作數(shù)據(jù)庫 34
2.4 本章小結(jié)47
第 3 章 Node.js 開發(fā)起步 48
3.1 JavaScript 語法 49
3.2 控制臺的輸入與輸出 66
3.3 JavaScript 語言的命名規(guī)范和編程規(guī)范 69
3.4 JavaScript 語言和 Node.js 之間的關(guān)系 75
3.5 本章小結(jié)76
第 4 章 Node.js 文件管理 77
4.1 Node.js 文件管理概述78
4.2 異步與同步80
4.3 Node.js 打開文件與關(guān)閉文件 84
4.4 Node.js 獲取文件信息 86
4.5 Node.js 寫入文件與讀取文件 89
4.6 Node.js 截取文件與刪除文件 93
4.7 Node.js 目錄的創(chuàng)建、刪除和讀取 95
4.8 文件管理 API 手冊 97
4.9 本章小結(jié)99
第 5 章 Node.js 網(wǎng)絡(luò)開發(fā)100
5.1 Node.js 網(wǎng)絡(luò)開發(fā)概述 101
5.2 TCP 服務(wù)器構(gòu)建 104
5.3 TCP 客戶端構(gòu)建 113
5.4 UDP 服務(wù)構(gòu)建 116
5.5 Node.js 長連接構(gòu)建 119
5.6 Node.js 網(wǎng)絡(luò)開發(fā)常用的 API 手冊 130
5.7 本章小結(jié)131
第 6 章 Node.js 訪問 MongoDB 132
6.1 MongoDB 數(shù)據(jù)庫介紹 133
6.2 MongoDB 基本操作 134
6.3 mongoose 基本操作 167
6.4 本章小結(jié)186
第 7 章 Node.js 分布式187
7.1 Node.js 分布式概述 188
7.2 Node.js 負(fù)載均衡 190
7.3 Node.js 去狀態(tài)化 193
7.4 Node.js 遠(yuǎn)程過程調(diào)用(RPC)196
7.5 Node.js 中間件 199
7.6 本章小結(jié)203
第 8 章 Express.js 框架基本使用 204
8.1 Express.js 框架介紹 205
8.2 Express.js 應(yīng)用程序生成器 216
8.3 Express.js 路由 219
8.4 Express.js 中間件 229
8.5 Express.js 模板引擎 242
8.6 Express.js 錯誤處理 246
8.7 Express.js 調(diào)試 247
8.8 Express.js 靜態(tài)文件 247
8.9 Express.js 常用的 API 手冊 248
8.10 本章小結(jié) 249
第 9 章 Koa.js 框架基本使用 250
9.1 Koa.js 框架介紹 251
9.2 Koa.js 應(yīng)用程序生成器 253
9.3 Koa.js 應(yīng)用程序 255
9.4 Koa.js 上下文 260
9.5 Koa.js 中間件 261
9.6 Koa.js 路由 263
9.7 Koa.js 常用的 API 的介紹 265
9.8 本章小結(jié)266
第 10 章 個人博客項目實踐 267
10.1 項目需求分析 268
10.2 項目數(shù)據(jù)庫設(shè)計與創(chuàng)建 270
10.3 項目架構(gòu)分析 273
10.4 前端 Vue.js 部分 275
10.5 后端 Express.js 部分 297
10.6 前后端聯(lián)調(diào) 317
10.7 項目部署上線 330
10.8 本章小結(jié) 331