Node.js開發實戰

Node.js開發實戰

基本介紹

  • 書名:Node.js開發實戰
  • 作者:忽如寄
  • ISBN:9787302488149
  • 出版社:清華大學出版社
  • 出版時間:2018.01.01
內容簡介,目錄,

內容簡介

本書以實戰開發為原則,以Node.js原生知識和框架實戰為主線,詳細介紹Node.js開發的基礎知識和相應案例實踐,包括Node.js的原生模組http、net、fs、dns、path、assert等,以及主流前沿的Express框架、Meteor框架、Koa框架的項目實際使用,同時也包含Node.js的單元測試、Node.js部署等方面的套用,還為讀者提供了詳盡的原始碼以及代碼注釋。
本書共14章,分為4篇,涵蓋的主要內容有Node.js環境搭建、Node.js的編碼規範、Node.js包管理機制、Node.js網路開發、Node.js檔案模組使用、Node.js資料庫開發、Node.js的單元測試、前端框架React使用、Express使用、Koa框架使用、Meteor框架使用、Nginx使用、PM2使用、Node.js包的開發與發布、個人部落格的搭建、任務清單項目等。
本書內容豐富、實例典型、實用性強,適合希望學習Node.js基礎以及了解Node.js實際使用的人員閱讀,尤其適合希望通過編碼實例學習Node.js開發的人員閱讀。

目錄

第一篇Node.js概述和開發環境的搭建
第1章Node.js介紹 3
1.1Node.js簡介 3
1.2Node.js的發展歷史和特點 4
1.2.1Node.js發展歷史 4
1.2.2Node.js未來版本規劃 5
1.2.3Node.js的結構 6
1.2.4Node.js的特點 7
1.2.5Node.js的套用場景 9
1.3Node.js在中國的發展 10
1.3.1Node.js中文資源匯總 10
1.3.2Node.js的發展和未來 10
1.4溫故知新 12
第2章部署Node.js開發環境 13
2.1Windows10下部署Node.js開發環境 13
2.1.1使用安裝包進行Node.js安裝 14
2.1.2測試Node.js開發環境 16
2.2Linux下部署Node.js開發環境 17
2.2.1通過源碼安裝Node.js 18
2.2.2通過包管理器安裝Node.js 18
2.3MacOSX下部署Node.js開發環境 19
2.3.1使用.dmg安裝包進行安裝 19
2.3.2使用NPM包管理器安裝 20
2.4樹莓派3下使用NVM安裝Node.js 20
2.5使用NPM進行Node包的安裝 21
2.6開發工具介紹 22
2.6.1下載安裝SublimeText3 22
2.6.2SublimeText操作界面 24
2.6.3安裝SublimeText3外掛程式 25
2.6.4安裝Node.js外掛程式 25
2.6.5SublimeText3快捷鍵 26
2.7溫故知新 28
第二篇Node.js編程基礎
第3章Node.js開發基礎 31
3.1JavaScript語法 31
3.1.1變數 31
3.1.2注釋 33
3.1.3數據類型 34
3.1.4函式 35
3.1.5閉包 37
3.2命名規範與編程規範 39
3.2.1命名規範 39
3.2.2編程規範 40
3.3Node.js的控制台console 42
3.3.1console對象下的各種方法 42
3.3.2console.log()方法 42
3.3.3console.info()、console.warn()和console.error()方法 43
3.3.4console.dir()方法 43
3.3.5console.time()和console.timeEnd()方法 44
3.3.6console.trace()方法 45
3.4溫故知新 45
第4章Node.js中的包管理 46
4.1NPM介紹 46
4.1.1NPM常用命令 46
4.1.2package.json檔案 48
4.2模組載入原理與載入方式 50
4.2.1require導入模組 50
4.2.2exports導出模組 51
4.3Node.js核心模組 52
4.3.1http模組——創建HTTP伺服器、客戶端 52
4.3.2url模組——url地址處理 56
4.3.3querystring模組——查詢字元串處理 57
4.4Node.js常用模組 58
4.4.1util模組——實用工具 58
4.4.2path模組——路徑處理 60
4.4.3dns模組 61
4.5實戰——爬取網頁圖片 62
4.5.1項目目錄與思路 62
4.5.2下載第三方模組 63
4.5.3配置網頁地址及圖片存放的資料夾 63
4.5.4解析DOM得到圖片地址 63
4.5.5請求圖片地址 64
4.5.6圖片檔案的保存 64
4.5.7啟動項目 65
4.6溫故知新 66
第5章檔案系統 67
5.1Node.js檔案系統介紹 67
5.1.1同步和異步 67
5.1.2fs模組中的類和檔案的基本信息 69
5.1.3檔案路徑 69
5.2基本檔案操作 71
5.2.1打開檔案 71
5.2.2關閉檔案 72
5.2.3讀取檔案 73
5.2.4寫入檔案 74
5.3其他檔案操作 75
5.4實戰——用IP位址來查詢天氣情況 78
5.4.1項目思路 78
5.4.2引入基礎模組 78
5.4.3解析IP位址信息 79
5.4.4通過公共服務獲取城市和天氣信息 79
5.4.5遍歷IP位址 80
5.4.6將結果寫入weather.json 81
5.5溫故知新 82
第6章Node.js網路開發 83
6.1構建TCP伺服器 83
6.1.1使用Node.js創建TCP伺服器 83
6.1.2監聽客戶端的連線 84
6.1.3查看伺服器監聽的地址 86
6.1.4連線伺服器的客戶端數量 87
6.1.5獲取客戶端傳送的數據 88
6.1.6傳送數據給客戶端 89
6.2構建TCP客戶端 91
6.2.1使用Node.js創建TCP客戶端 91
6.2.2連線TCP伺服器 91
6.2.3獲取從TCP伺服器傳送的數據 92
6.2.4向TCP伺服器傳送數據 92
6.3構建HTTP伺服器 94
6.3.1創建HTTP伺服器 94
6.3.2HTTP伺服器的路由控制 96
6.4利用UDP協定傳輸數據與傳送訊息 97
6.4.1創建UDP伺服器 98
6.4.2創建UDP客戶端 101
6.5溫故知新 103
第7章Node.js資料庫開發 104
7.1使用mongoose連線MongoDB 104
7.1.1MongoDB介紹 104
7.1.2使用mongoose連線MongoDB 106
7.1.3使用mongoose操作MongoDB 107
7.2直接連線MongoDB 114
7.2.1使用node-mongodb-native連線MongoDB 114
7.2.2使用node-mongodb-native操作MongoDB 114
7.3連線MySQL 122
7.3.1MySQL介紹 122
7.3.2Node.js連線MySQL 126
7.3.3Node.js操作MySQL 127
7.4實戰——學生成績錄入系統 129
7.4.1生成基本的項目結構 130
7.4.2資料庫設計 130
7.4.3成績錄入路由開發 131
7.4.4讀取學生成績路由開發 133
7.5溫故知新 134
第三篇Node.js實踐
第8章前端框架 137
8.1前端框架介紹——jQuery 137
8.1.1jQuery介紹 137
8.1.2使用jQuery選擇器 138
8.1.3使用jQuery進行DOM操作 140
8.2前端框架介紹——React 143
8.2.1React介紹 143
8.2.2React的JSX語言 146
8.2.3React的props和state 148
8.2.4React的組件生命周期 151
8.3實戰——圖書信息統計 154
8.3.1生成基本的目錄結構 154
8.3.2基本的結構開發 155
8.3.3信息圖表的開發 157
8.4溫故知新 164
第9章Node.js的框架介紹 165
9.1Node.js框架整體介紹 165
9.1.1MVC框架 165
9.1.2全棧框架 166
9.1.3RESTAPI框架 167
9.1.4其他框架 167
9.2Express框架介紹 168
9.3Meteor框架介紹 170
9.4其他框架 170
9.4.1Sails.js 170
9.4.2Derby.js 171
9.4.3Flatiron.js 171
9.4.4Hapi 171
9.4.5Mean.IO 172
9.4.6Mojito 172
9.4.7SocketStream 172
9.4.8Bearcat 173
9.5如何選擇適合自己的框架 173
9.5.1選擇框架時的考慮事項 173
9.5.2選擇框架的建議 174
9.6溫故知新 176
第10章Node.js單元測試 177
10.1單元測試介紹 177
10.2使用單元測試模組Mocha 177
10.2.1Mocha介紹 178
10.2.2使用斷言庫should.js 183
10.2.3測試異步方法 186
10.2.4路由測試 186
10.2.5測試覆蓋率 188
10.2.6使用Travis-cli 189
10.3溫故知新 190
第11章其他套用部署相關 191
11.1使用Nginx 191
11.1.1Linux下安裝Nginx 192
11.1.2Windows下安裝Nginx 192
11.1.3Nginx的配置 193
11.1.4使用Nginx部署網站 198
11.2Yarn——新的包管理工具 200
11.3使用PM2 203
11.4使用Koa 204
第四篇Node.js項目案例
第12章使用Express開發個人部落格系統 209
12.1項目準備 209
12.1.1項目概述 209
12.1.2前端界面設計 209
12.1.3資料庫設計 211
12.2項目開發 213
12.2.1快速生成一個項目 213
12.2.2實現登錄界面 215
12.2.3實現部落格首頁界面 223
12.2.4部落格文章內容頁的實現 231
12.2.5部落格文章發布的實現 235
12.2.6部落格友情連結的實現 241
12.2.7部落格關於部落格的實現 242
12.2.8部落格404頁面的實現 243
12.2.9部落格側邊欄的最佳化 245
12.2.10部落格修改文章的實現 247
12.2.11部落格刪除文章的實現 251
12.2.12部落格文章分頁的實現 254
12.3項目總結 257
第13章使用Meteor+MongoDB開發任務清單 258
13.1項目準備 258
13.1.1Meteor和MongoDB的安裝 258
13.1.2項目設計 260
13.2項目開發 261
13.2.1項目展示功能開發 261
13.2.2項目頁面美化 263
13.2.3項目資料庫開發 265
13.2.4項目操作邏輯開發 266
13.3發布與訂閱 271
13.4項目總結 274
第14章開發和發布一個Node.js包 275
14.1Node.js包的設計 275
14.2發布到NPM上 282
14.3圖示和徽章 285
14.4總結 287

相關詞條

熱門詞條

聯絡我們