注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合Node學(xué)習(xí)指南

Node學(xué)習(xí)指南

Node學(xué)習(xí)指南

定 價(jià):¥69.00

作 者: (美)Shelley Powers 著,夏思雨,高亮 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

ISBN: 9787115337962 出版時(shí)間: 2014-03-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 361 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  Node.js是一套用來(lái)編寫高性能網(wǎng)絡(luò)服務(wù)器的JavaScript工具包。它可以讓JavaScript在服務(wù)器端運(yùn)行,因此,可用來(lái)快速構(gòu)建網(wǎng)絡(luò)服務(wù)及應(yīng)用的平臺(tái)。《Node學(xué)習(xí)指南》是學(xué)習(xí)Node編程的入門指南。全書共16章。前4章主要介紹Node基本知識(shí),包管理工具(npm)的安裝和使用等。第5章介紹了Node處理異步開(kāi)發(fā)的獨(dú)特的實(shí)現(xiàn)方式等。第6~8章,講解了路由、代理、Web服務(wù)器、中間件等基本概念,包括Express。第9章到第11章分別介紹了基于Redis、MongoDB以及關(guān)系型數(shù)據(jù)庫(kù)的Node應(yīng)用開(kāi)發(fā)。第12章到第14章分別介紹了圖形和媒體、Sockets.io模塊、調(diào)試和測(cè)試等主題。第15章介紹了安全和權(quán)限的問(wèn)題,第16章介紹了Node應(yīng)用的擴(kuò)展和部署。《Node學(xué)習(xí)指南》適合有一定基礎(chǔ)的JavaScript程序員閱讀,也適合對(duì)學(xué)習(xí)Node應(yīng)用開(kāi)發(fā)感興趣的讀者學(xué)習(xí)參考。

作者簡(jiǎn)介

  Shelley Powers從JavaScript剛發(fā)布時(shí),就開(kāi)始使用和編寫Web技術(shù)相關(guān)書籍。她之前在O’Reilly出版了8本書,包括Developing ASP Components(2001),Adding Ajax(2007)和JavaScript Cookbook(2010)。

圖書目錄

目 錄
第1章 Node.js:?jiǎn)?dòng)與運(yùn)行 1
1.1 搭建Node開(kāi)發(fā)環(huán)境 2
1.1.1 Linux(Ubuntu)下安裝Node 2
1.1.2 Windows 7平臺(tái)下Node+WebMatrix 4
1.1.3 升級(jí)Node 8
1.2 開(kāi)始Node開(kāi)發(fā) 9
1.2.1 Hello, World in Node 9
1.2.2 分析“Hello,World” 11
1.3 異步函數(shù)及Node事件循環(huán) 13
1.3.1 使用異步方式讀取文件 14
1.3.2 觀察異步程序流程 15
1.4 Node的優(yōu)勢(shì) 19
第2章 Node與REPL 20
2.1 REPL:先睹為快和未定義的表達(dá)式 20
2.2 REPL的優(yōu)勢(shì):更好地理解表層之下的JavaScript 22
2.3 多行以及更復(fù)雜的JavaScript 23
2.3.1 REPL命令 26
2.3.2 REPL和rlwrap 27
2.3.3 定制REPL 28
2.4 不可預(yù)計(jì)的意外——記得經(jīng)常保存 32
第3章 Node核心庫(kù) 33
3.1 全局對(duì)象:global、process和Buffer 34
3.1.1 global 34
3.1.2 process 36
3.1.3 Buffer 38
3.2 定時(shí)器:setTimeout、clearTimeout、setInterval 和clearInterval 39
3.3 Servers、Streams和Sockets 40
3.3.1 TCP Sockets和Servers 41
3.3.2 HTTP 43
3.3.3 UDP數(shù)據(jù)報(bào)套接字 45
3.3.4 流、管道和Readline 47
3.4 子進(jìn)程 49
3.4.1 child_process.spawn 50
3.4.2 child_process.exec和child_process.execFile 52
3.4.3 child_process.fork 52
3.4.4 在Windows系統(tǒng)中使用子進(jìn)程 53
3.5 域名解析和URL處理 54
3.6 Utilities模塊和對(duì)象繼承 55
3.7 Events和EventEmitter 59
第4章 Node模塊系統(tǒng) 63
4.1 使用require和默認(rèn)路徑加載模塊 63
4.2 外部模塊和Node包管理工具 65
4.3 如何找到你需要的模塊 69
4.3.1 Colors:簡(jiǎn)單至上 71
4.3.2 Optimist:另一個(gè)簡(jiǎn)單的小模塊 73
4.3.3 Underscore 74
4.4 創(chuàng)建自定義模塊 75
4.4.1 打包整個(gè)目錄 76
4.4.2 為你的模塊發(fā)布做準(zhǔn)備 76
4.4.3 發(fā)布模塊 80
第5章 控制流、異步模式和異常處理 82
5.1 使用Callback而不使用Promises 82
5.2 順序調(diào)用、嵌套回調(diào)、異常捕獲 85
5.3 異步模式和控制流模塊 92
5.3.1 Step 93
5.3.2 Async 96
5.4 Node編碼風(fēng)格 101
第6章 路由尋址、服務(wù)文件和中間件 103
6.1 從頭開(kāi)始:創(chuàng)建一個(gè)簡(jiǎn)單的靜態(tài)文件服務(wù)器 103
6.2 中間件 110
6.2.1 Connect基本知識(shí) 111
6.2.2 Connect中間件 113
6.2.3 定制Connect中間件 118
6.3 Routers 121
6.4 Proxies 124
第7章 Express框架 128
7.1 Express:?jiǎn)?dòng)和運(yùn)行 129
7.2 app.js文件 130
7.3 錯(cuò)誤處理 133
7.4 Express與Connect的關(guān)系 134
7.5 路由 135
7.5.1 路由路徑 137
7.5.2 路由和HTTP動(dòng)詞 140
7.6 關(guān)于MVC 147
7.7 使用cURL測(cè)試Express應(yīng)用程序 152
第8章 Express、模板系統(tǒng)和CSS 154
8.1 EJS模板系統(tǒng)(Embedded JavaScript Template System) 154
8.1.1 基本語(yǔ)法 155
8.1.2 Node與EJS 156
8.1.3 EJS與Node Filters 158
8.2 在Express中使用EJS 159
8.2.1 多對(duì)象環(huán)境的改造 161
8.2.2 靜態(tài)文件路由 162
8.2.3 處理一個(gè)新對(duì)象的Post請(qǐng)求 164
8.2.4 Widget索引和生成picklist 166
8.2.5 顯示單個(gè)對(duì)象并確認(rèn)對(duì)象的刪除操作 168
8.2.6 提供更新信息的表達(dá)以及處理PUT請(qǐng)求 170
8.3 Jade模板系統(tǒng) 173
8.3.1 Jade語(yǔ)法簡(jiǎn)介 173
8.3.2 使用block和extends模塊化視圖模板 176
8.3.3 Widget View轉(zhuǎn)換為Jade模板 178
8.3.4 轉(zhuǎn)換edit和delete表單 179
8.4 使用Stylus完成簡(jiǎn)單的CSS樣式 182
第9章 結(jié)構(gòu)化數(shù)據(jù)、Noe和Redis 187
9.1 Node和Redis 188
9.2 構(gòu)建游戲得分排行榜 190
9.3 創(chuàng)建消息隊(duì)列 197
9.4 為Express應(yīng)用程序添加統(tǒng)計(jì)中間件 201
第10章 Node和MongoDB:文檔中心數(shù)據(jù) 206
10.1 MongoDB Native Node.js Driver(MongoDB原生Node.js驅(qū)動(dòng)) 207
10.1.1 MongoDB入門 207
10.1.2 定義、創(chuàng)建以及銷毀MongoDB Collection 208
10.1.3 為Collection添加數(shù)據(jù) 209
10.1.4 查詢數(shù)據(jù) 212
10.1.5 使用Updates、Upserts、Find和Remove 216
10.2 使用Mongoose實(shí)現(xiàn)Widget模塊 221
10.3 重構(gòu)Widget工廠 222
10.4 添加MongoDB后臺(tái) 223
第11章 Node與關(guān)系型數(shù)據(jù)庫(kù) 228
11.1 db-mysql入門 229
11.1.1 查詢字符串和方法鏈 229
11.1.2 使用查詢字符串更新數(shù)據(jù)庫(kù) 233
11.1.3 使用方法鏈更新數(shù)據(jù)庫(kù) 235
11.2 使用node-mysql實(shí)現(xiàn)本地MySQL訪問(wèn) 237
11.2.1 使用node-mysql做基本的CRUD操作 237
11.2.2 MySQL事務(wù)與mysql-queues 239
11.3 ORM與Sequelize 241
11.3.1 定義模型 241
11.3.2 ORM風(fēng)格的CRUD實(shí)現(xiàn) 243
11.3.3 添加多個(gè)對(duì)象 246
11.3.4 從關(guān)系型到ORM 247
第12章 圖形和HTML5 Video 248
12.1 創(chuàng)建和使用PDF 248
12.1.1 使用子進(jìn)程訪問(wèn)PDF工具 249
12.1.2 使用PDFKit創(chuàng)建PDF 257
12.2 從子進(jìn)程訪問(wèn)ImageMagick 258
12.3 通過(guò)HTTP提供HTML5 Video服務(wù) 263
12.4 創(chuàng)建和流化畫布內(nèi)容(Canvas Content) 267
第13章 WebSockets和Socket.IO 271
13.1 WebSockets 271
13.2 Socket.IO簡(jiǎn)介 272
13.2.1 一個(gè)簡(jiǎn)單的通信范例 273
13.2.2 異步世界里的WebSockets 276
13.2.3 關(guān)于客戶端代碼 277
13.3 配置Socket.IO 278
13.4 Chat:WebSockets版本的“Hello, World” 279
13.5 在Express中使用Socket.IO 282
第14章 Node應(yīng)用程序的測(cè)試和調(diào)試 284
14.1 調(diào)試 284
14.1.1 Node.js Debugger 284
14.1.2 使用Node Inspector的客戶端調(diào)試 287
14.2 單元測(cè)試(Unit Testing) 289
14.2.1 Assert與單元測(cè)試 289
14.2.2 Nodeunit與單元測(cè)試 293
14.2.3 其他測(cè)試框架 295
14.3 驗(yàn)收測(cè)試 299
14.3.1 Soda和Selenium測(cè)試 299
14.3.2 通過(guò)Tobi和Zombie模擬瀏覽器 303
14.4 性能測(cè)試:基準(zhǔn)問(wèn)題和負(fù)載測(cè)試 304
14.4.1 ApacheBench基準(zhǔn)測(cè)試 305
14.4.2 Nodeload與負(fù)載測(cè)試 309
14.5 Nodemon更新代碼 312
第15章 安全及防護(hù) 313
15.1 數(shù)據(jù)加密 314
15.1.1 TSL/SSL配置 314
15.1.2 使用HTTPS 315
15.1.3 如何安全的保存密碼 317
15.2 認(rèn)證/授權(quán)及Passport 320
15.2.1 授權(quán)/認(rèn)證策略:Oauth、OpenID、用戶名/密碼驗(yàn)證 321
15.2.2 Local Passport Strategy 323
15.2.3 Twitter Passport Strategy(OAuth) 330
15.3 保護(hù)應(yīng)用程序,防止攻擊 336
15.3.1 不要使用eval 336
15.3.2 盡量使用復(fù)選框、單選按鈕和下拉式選項(xiàng) 337
15.3.3 使用node-validator 337
15.4 在沙箱中執(zhí)行代碼 339
第16章 擴(kuò)展和部署Node應(yīng)用 343
16.1 把你的節(jié)點(diǎn)部署到服務(wù)器上 343
16.1.1 編寫package.json文件 344
16.1.2 使用Forever讓你的應(yīng)用“永不掉線” 347
16.1.3 使用Node和Apache 350
16.1.4 改善性能 352
16.2 部署到云服務(wù) 352
16.2.1 通過(guò)Cloud9 IDE部署到Windows Azure 353
16.2.2 Joyent Development SmartMachine 355
16.2.3 Heroku 355
16.2.4 Amazon EC2 356
16.2.5 Nodejitsu 356
附錄 Node、Git和GitHub 357

本目錄推薦

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