-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Node.js設計模式(第2版)

( 簡體 字)
作者:(愛爾蘭)Mario Casciaro(馬里奧?卡西羅), (意大利)Luciano Mammino(盧西安諾?馬米諾)類別:1. -> 程式設計 -> 網路編程 -> Node.js
譯者:
出版社:電子工業出版社Node.js設計模式(第2版) 3dWoo書號: 48617
詢問書籍請說出此書號!

缺書
NT售價: 540

出版日:2/1/2018
頁數:410
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121335228
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

目錄:

第1 章歡迎來到Node.js 平臺. . . . . 1
Node.js 的哲學思想. . . . . 2
小核心. . . . . 2
小模組. . . . . 2
小接觸面. . . . . 3
簡單和實用3
認識Node.js 6 和ES2015. . . . . 4
let 和const 關鍵字. . . . . 5
箭頭函數. . . . . 6
類語法. . . . . 8
增強的對象字面量. . . . . 10
Map 和Set 集合. . . . . 11
WeakMap 和WeakSet 集合. . . . . 13
範本字面量. . . . . 14
其他ES2015 特性. . . . . 14
Reactor 模式. . . . . 15
I/O 是緩慢的. . . . . 15
阻塞I/O. . . . . 15
非阻塞I/O . . . . . 16
事件多路分解器. . . . . 17
Reactor 模式簡介. . . . . 19
Node.js-libuv 的非阻塞I/O 引擎. . . . . 20
Node.js 的秘訣. . . . . 21
總結. . . . . 21
第2 章Node.js 基礎設計模式. . . . . . 23
回檔模式. . . . . 24
CPS(Continuation Passing Style). . . . . 24
同步或非同步. . . . . 26
Node.js 回檔約定. . . . . 31
模組系統及其模式. . . . . 34
揭示模組模式. . . . . 34
Node.js 模組解釋. . . . . 35
模組定義模式. . . . . 42
觀察者模式. . . . . 49
EventEmitter 類. . . . . 49
創建和使用EventEmitter . . . . . 50
傳播錯誤. . . . . 51
使任何對象可觀察. . . . . 51
同步和非同步事件. . . . . 53
EventEmitter 與回檔. . . . . 54
組合回檔和EventEmitter . . . . . 55
總結. . . . . 55
第3 章非同步控制流模式之回呼函數. . . . 56
非同步程式設計的困難. . . . . 56
創建一個簡單的網路蜘蛛. . . . . 57
回檔地獄. . . . . 59
使用純JavaScript. . . . . 60
回檔規則. . . . . 60
應用回檔規則. . . . . 61
循序執行. . . . . 63
並存執行. . . . . 68
有限制的並存執行. . . . . 73
async 庫. . . . . 77
循序執行. . . . . 78
並存執行. . . . . 81
有限制的並存執行. . . . . 81
總結. . . . . 83
第4 章非同步控制流模式之ES2015 . . . . 84
promise . . . . . 84
什麼是promise . . . . . 85
Promises/A 實現. . . . . 87
Node.js 風格函數的promise 化. . . . . 88
循序執行. . . . . 90
並存執行. . . . . 93
有限制的並存執行. . . . . 93
在公共API 中暴露callback 和promise. . . . . 95
generator . . . . . 97
generator 基礎. . . . . 97
generator 的非同步控制流. . . . . 100
循序執行. . . . . 104
並存執行. . . . . 106
有限制的並存執行. . . . . 108
使用Babel 的async await. . . . . 111
安裝和運行Babel . . . . . 112
比較. . . . . 113
總結. . . . . 114
第5 章流程式設計. . . . . . . 115
流的重要性. . . . . 115
緩衝和流. . . . . 116
空間效率. . . . . 117
時間效率. . . . . 118
組合性. . . . . 121
開始學習流. . . . . 122
流的分類. . . . . 122
可讀流. . . . . 123
可寫流. . . . . 127
雙向流(Duplex stream). . . . . 132
變換流. . . . . 132
使用管道拼接流. . . . . 135
使用流處理非同步流程. . . . . 137
循序執行. . . . . 138
無序並存執行. . . . . 139
無序有限制的並存執行. . . . . 143
順序並存執行. . . . . 145
管道模式. . . . . 146
組合流. . . . . 146
複製流. . . . . 149
合併流. . . . . 150
複用和分解. . . . . 152
總結. . . . . 159
第6 章設計模式. . . . . . . 160
工廠模式. . . . . 161
創建物件的通用介面. . . . . 161
一種封裝的機制. . . . . 162
構建一個簡單的代碼分析器. . . . . 164
可組合的工廠函數. . . . . 166
擴展. . . . . 169
揭示構造函數. . . . . 170
唯讀事件觸發器. . . . . 171
擴展. . . . . 172
代理模式. . . . . 173
實現代理模式的方法. . . . . 174
不同方法的比較. . . . . 176
創建日誌記錄的寫入流. . . . . 176
生態系統中的代理模式——函數鉤子與面向行為程式設計(AOP). . . . . 178
ES2015 中的Proxy 物件. . . . . 178
擴展. . . . . 180
裝飾者模式(Decorator). . . . . 180
實現裝飾者模式的方法. . . . . 181
裝飾一個LevelUP 資料庫. . . . . 182
擴展. . . . . 185
適配器模式(Adapter) . . . . . 185
通過檔案系統API 來使用LevelUP 資料庫. . . . . 186
擴展. . . . . 189
策略模式(Strategy). . . . . 189
支援多種格式的配置物件. . . . . 190
擴展. . . . . 193
狀態模式. . . . . 193
實現一個基本的自動防故障通訊端. . . . . 194
範本模式(Template). . . . . 199
配置管理器範本. . . . . 199
擴展. . . . . 201
中介軟體(Middleware) . . . . . 202
Express 中的中介軟體. . . . . 202
設計模式中的中介軟體. . . . . 203
為?MQ 創建中介軟體框架. . . . . 204
在Koa 中使用生成器的中介軟體. . . . . 210
命令模式(Command). . . . . 213
靈活的設計模式. . . . . 214
總結. . . . . 218
第7 章連接模組. . . . . . . 220
模組和依賴. . . . . 221
Node.js 中最常見的依賴. . . . . 221
內聚和耦合. . . . . 222
有狀態的模組. . . . . 222
連接模組模式. . . . . 224
硬編碼依賴. . . . . 224
依賴注入. . . . . 229
服務定位器. . . . . 234
依賴注入容器. . . . . 239
連接外掛程式. . . . . 243
外掛程式作為包. . . . . 243
擴展點. . . . . 245
外掛程式控制與應用程式控制的擴展. . . . . 245
實現註銷外掛程式. . . . . 248
總結. . . . . 256
第8 章通用JavaScript 的Web 應用程式. . . . 257
與流覽器端共用代碼. . . . . 258
共用模組. . . . . 258
Webpack 簡介. . . . . 262
Webpack 的魔力. . . . . 263
Webpack 的優點. . . . . 264
使用ES2015 和Webpack . . . . . 265
跨平臺開發基礎. . . . . 267
運行時代碼分支. . . . . 268
構建時代碼分支. . . . . 269
模組交換. . . . . 271
用於跨平臺開發的設計模式. . . . . 273
React 介紹. . . . . 274
第一個React 組件. . . . . 275
JSX 是什麼. . . . . 277
配置Webpack 以實現JSX 轉換. . . . . 279
在流覽器中渲染. . . . . 280
React 路由庫. . . . . 281
創建通用JavaScript 應用程式. . . . . 286
創建可用的組件. . . . . 287
服務端渲染. . . . . 289
通用渲染和路由. . . . . 293
通用資料檢索. . . . . 294
總結. . . . . 304
第9 章高級非同步程式設計技巧. . . . . . 305
需要非同步初始化的模組. . . . . 305
規範解決方案. . . . . 306
預初始化佇列. . . . . 307
題外話. . . . . 311
非同步批次處理和緩存. . . . . 312
實現沒有緩存或批次處理的伺服器. . . . . 312
非同步請求批次處理. . . . . 314
非同步請求緩存. . . . . 316
使用promise 進行批次處理和緩存. . . . . 319
運行CPU 綁定的任務. . . . . 322
解決子集和問題. . . . . 322
交叉使用setImmediate . . . . . 325
使用多進程. . . . . 328
總結. . . . . 335
第10 章擴展與架構模式. . . . . 336
應用程式擴展介紹. . . . . 337
擴展Node.js 應用程式. . . . . 337
可擴展性的三個維度. . . . . 337
克隆和負載均衡. . . . . 339
集群模組. . . . . 340
處理有狀態通信. . . . . 348
使用反向代理進行擴展. . . . . 350
使用服務註冊表. . . . . 354
對等負載均衡. . . . . 360
分解複雜的應用程式. . . . . 362
單體式架構. . . . . 362
微服務架構. . . . . 364
微服務架構中的集成模式. . . . . 367
總結. . . . . 372
第11 章消息傳遞與集成模式. . . . . 374
消息系統的基礎. . . . . 375
單向和請求/接聽模式. . . . . 375
消息類型. . . . . 376
非同步消息和佇列. . . . . 377
對等或基於代理的消息. . . . . 378
發佈/訂閱模式. . . . . 379
構建簡約的即時聊天應用程式. . . . . 380
使用Redis 作為消息代理. . . . . 383
使用?MQ 對等發佈/訂閱. . . . . 385
持久訂閱者. . . . . 389
管道和任務分配模式. . . . . 396
?MQ 扇出/扇入模式. . . 397
使用AMQP 實現管道和競爭消費者模式. 401
請求/接聽模式. 406
關聯識別字. 406
返回地址. 410
總結. 415
序: