注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Node.js 12實戰(zhàn)

Node.js 12實戰(zhàn)

Node.js 12實戰(zhàn)

定 價:¥69.00

作 者: 趙榮嬌 著
出版社: 清華大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787302557067 出版時間: 2020-07-01 包裝: 平裝
開本: 16 頁數(shù): 331 字?jǐn)?shù):  

內(nèi)容簡介

  本書以Node.js 12版本為基礎(chǔ),以代碼演練為講解方式,介紹Node.js開發(fā)中涉及的技術(shù)。本書簡單實用,可以從零學(xué)起,方便初學(xué)者快速入門。 本書共12章,涵蓋的主要內(nèi)容有:Node.js與JavaScript的聯(lián)系和區(qū)別、Node.js工作原理和NPM的使用、Node.js語法和常用模塊、Node.js異步I/O與多線程、Node.js錯誤處理、Node.js測試方法、Node.js的數(shù)據(jù)處理方法、結(jié)合Vue+Express+Koa+MongoDB的Node.js項目實戰(zhàn)等。 本書內(nèi)容豐富,實例典型,實用性強,適合有一定的HTML、CSS、JavaScript基礎(chǔ),希望全面學(xué)習(xí)Node.js開發(fā)的前端開發(fā)人員閱讀,也適合希望提高Web項目開發(fā)水平的人員閱讀。

作者簡介

  趙榮嬌,飛豬旅行前端開發(fā)工程師,擅長CSS、JavaScript和各種框架,參與寫作或翻譯過多本前端精品圖書。喜歡旅行,熱愛前端開發(fā),樂于分享。

圖書目錄

目  錄
第1章  Node.js與JavaScript 1
1.1  JavaScript與前端 1
1.2  個JavaScript實現(xiàn)的Hello World 1
1.3  Node.js 12安裝前的準(zhǔn)備 3
1.3.1  在Microsoft Windows系統(tǒng)上安裝Node.js 3
1.3.2  在Linux發(fā)行版上安裝Node.js 5
1.3.3  在Mac OS X上安裝Node.js 7
1.3.4  Mac OS X中Node.js版本的切換和升級 7
1.4  JavaScript與Node.js對比 10
1.5  個Node.js實現(xiàn)的Hello World 10
1.5.1  純腳本示例 10
1.5.2  交互模式 11
1.5.3  創(chuàng)建Node.js項目 11
1.6  Node.js的開發(fā)調(diào)試工具Inspect 12
第2章  NPM、REPL與Node.js工作原理 15
2.1  NPM的使用 15
2.1.1  NPM簡介 15
2.1.2  NPM的工作原理 16
2.1.3  package.json屬性說明 17
2.1.4  NPM的常用命令 19
2.2  REPL的使用 21
2.3  Runtime和vm 22
2.3.1  Runtime 22
2.3.2  vm 23
2.4  回調(diào)函數(shù) 24
2.5  同步/異步和阻塞/非阻塞 25
2.5.1  同步和異步 26
2.5.2  阻塞和非阻塞 28
2.5.3  同步/異步和阻塞/非阻塞 29
2.6  單線程和多線程 29
2.7  并行和并發(fā) 30
2.8  事件循環(huán) 31
第3章  Node.js的語法 34
3.1  ECMAScript 6標(biāo)準(zhǔn) 34
3.2  數(shù)組常用方法及ES6中的數(shù)組方法 34
3.3  函數(shù) 40
3.3.1  參數(shù)的默認(rèn)值 40
3.3.2  rest參數(shù) 44
3.3.3  name屬性 45
3.3.4  箭頭函數(shù) 46
3.4  閉包 49
3.5  對象 51
3.5.1 屬性的簡潔表示 52
3.5.2  屬性名表達(dá)式 53
3.5.3  方法的name屬性 55
3.5.4  對象的擴展運算符 56
3.5.5  對象的新方法 58
3.5.6  屬性的可枚舉性 67
3.5.7  屬性的遍歷 68
3.6  類 69
3.6.1  基礎(chǔ)用法 69
3.6.2  封裝與繼承 74
3.6.3  super關(guān)鍵字 77
3.7  ES6的模塊化 78
3.7.1  基本用法 78
3.7.2  as 的用法 79
3.7.3  import命令的特點 80
3.7.4  export與import 81
3.8  使用Babel轉(zhuǎn)碼 82
3.9  使用N-API 84
第4章  Node.js常用模塊 88
4.1  Module 88
4.1.1  創(chuàng)建和使用模塊 88
4.1.2  require方法中的文件查找策略 89
4.2  Buffer 93
4.2.1  Buffer與字符編碼及轉(zhuǎn)換 93
4.2.2  Buffer類及其方法 94
4.2.3  Buffer與性能 99
4.3  File System 99
4.3.1  異步讀文件 100
4.3.2 同步讀文件 101
4.3.3  打開文件 102
4.3.4  寫入文件 103
4.3.5  獲取文件信息 104
4.3.6  fs.read異步讀文件 105
4.3.7  fs.close異步關(guān)閉文件 106
4.4  HTTP/HTTP2服務(wù) 107
4.4.1  http模塊 108
4.4.2  http2模塊 111
4.5  TCP服務(wù) 114
4.5.1  構(gòu)建TCP服務(wù)器 115
4.5.2  服務(wù)器和客戶端之間的通信 118
4.5.3  構(gòu)建TCP客戶端 119
4.6  SSL 121
4.6.1  SSL簡介 121
4.6.2  使用OpenSSL進(jìn)行證書生成 123
4.6.3  Node.js實現(xiàn)HTTPS的配置 125
4.7  WebSocket 126
4.7.1  ws模塊 126
4.7.2  實戰(zhàn):ws簡易聊天室 128
4.8  流 136
4.8.1  可讀流 137
4.8.2  可寫流 138
4.8.3  管道流 140
4.9  事件 141
4.9.1  注冊事件名&監(jiān)聽器 142
4.9.2  給監(jiān)聽器listener傳入?yún)?shù)與this 143
4.9.3  多只觸發(fā)一次的監(jiān)聽器 143
4.9.4  添加監(jiān)聽器/移除監(jiān)聽器事件 144
4.9.5  錯誤事件 144
4.10  實戰(zhàn)演練RESTful API 145
第5章  Node.js調(diào)試 152
5.1  基礎(chǔ)調(diào)試 152
5.1.1  基礎(chǔ)API 152
5.1.2  自定義stdout 154
5.1.3  控制調(diào)試日志 155
5.2  進(jìn)階調(diào)試 160
5.2.1  使用Inspect調(diào)試 161
5.2.2  使用VSCode IDE調(diào)試 164
第6章  Node.js的異步I/O與多線程 167
6.1  異步I/O 167
6.1.1  異步I/O的必要性 167
6.1.2  操作系統(tǒng)對異步I/O的支持 168
6.1.3  異步I/O與輪詢技術(shù) 169
6.2  進(jìn)程、線程、協(xié)程等 169
6.2.1  進(jìn)程、線程、協(xié)程 169
6.2.2  應(yīng)用場景 171
6.2.3  并發(fā)與并行 171
6.3  在Node.js中實現(xiàn)多線程 172
6.3.1  單線程的JavaScript 172
6.3.2  Node.js 內(nèi)部分層 174
6.3.3  libuv 174
6.3.4  多進(jìn)程 175
6.4  Node性能小結(jié) 176
第7章  Node.js的錯誤處理 177
7.1  錯誤的分類 177
7.2  函數(shù)的錯誤處理 178
7.3  實戰(zhàn)演練異常-錯誤處理 179
7.3.1  同步代碼的異常捕獲處理 179
7.3.2  異步代碼的錯誤處理 180
7.3.3  使用event方式來處理異常 181
7.3.4  Callback方式 182
7.3.5  Promise方式 182
7.3.6  使用domain模塊 185
7.3.7  多進(jìn)程模式加異常捕獲后重啟 186
第8章  Node.js的測試 188
8.1  什么是單元測試 188
8.2  一個簡單的單元測試 189
8.3  Mocha 190
8.4  Assert 192
8.5  測試HTTP接口 196
8.6  代碼覆蓋率工具istanbul 197
第9章  Node.js的數(shù)據(jù)處理 199
9.1  MySQL 199
9.1.1  Node.js 連接 MySQL 199
9.1.2  數(shù)據(jù)庫操作 200
9.1.3  使用Sequelize操作數(shù)據(jù)庫 202
9.2  MongoDB 208
9.2.1  創(chuàng)建數(shù)據(jù)庫 208
9.2.2  數(shù)據(jù)庫操作 209
9.3  Redis 215
9.3.1  Node.js連接Redis 215
9.3.2  列表——List 217
9.3.3  集合——Set 218
9.3.4  消息中介 218
第10章  實戰(zhàn):使用原生JavaScript開發(fā)Node.js案例 220
10.1  項目任務(wù) 220
10.2  HTTP服務(wù)器 221
10.3  服務(wù)端模塊化 223
10.4  設(shè)計請求路由 224
10.5  請求處理程序 229
10.6  非阻塞式處理請求響應(yīng) 232
10.7  處理POST請求 235
10.8  文件上傳 241
第11章  實戰(zhàn):基于Vue Express MongoDB實現(xiàn)一個后臺管理系統(tǒng) 248
11.1  項目結(jié)構(gòu) 248
11.2  前端代碼實現(xiàn) 249
11.2.1  項目依賴的模塊 249
11.2.2  注冊頁 250
11.2.3  登錄頁 254
11.2.4  管理頁 258
11.3  后端代碼實現(xiàn) 266
11.3.1  數(shù)據(jù)庫設(shè)計 266
11.3.2  啟動應(yīng)用 268
11.3.3  注冊/登錄接口 268
11.3.4  增刪改查接口 271
第12章  實戰(zhàn):基于Koa MongoDB 實現(xiàn)博客網(wǎng)站 279
12.1  項目結(jié)構(gòu) 279
12.2  數(shù)據(jù)庫設(shè)計 281
12.2.1  數(shù)據(jù)準(zhǔn)備 281
12.2.2  連接數(shù)據(jù)庫 281
12.2.3  創(chuàng)建表結(jié)構(gòu) 282
12.3  服務(wù)端實現(xiàn) 283
12.3.1  啟動后臺應(yīng)用 283
12.3.2  配置中間件 283
12.3.3  搭建路由和控制器 287
12.3.4  賬戶管理 290
12.3.5  博客管理 294
12.4  博客后臺管理的實現(xiàn) 297
12.4.1  目錄結(jié)構(gòu) 297
12.4.2  權(quán)限管理 297
12.4.3  博客管理 309
12.5  博客前臺站點的實現(xiàn) 322
12.5.1  目錄結(jié)構(gòu) 322
12.5.2  博客列表頁 323
12.5.3  博客詳情頁 327
 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號