-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
防疫期間 門市僅限取書, 不開放參觀
並提早到6點打烊, 星期日公休
8/3 新書到! 7/27 新書到! 7/20 新書到! 7/14 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

狼書(卷2):Node.js Web應用開發

( 簡體 字)
作者:狼叔類別:1. -> 程式設計 -> 網路編程 -> Node.js
譯者:
出版社:電子工業出版社狼書(卷2):Node.js Web應用開發 3dWoo書號: 52197
詢問書籍請說出此書號!

有庫存
NT定價: 495
折扣價: 465

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

譯者序:

前言:

Koa是下一代Node.js Web框架。所謂的“下一代”是相對于Express而言的。Koa立身于最“潮”的異步流程控制特性,主要用于改進Node.js開發中的回調地獄痛點,可以說Koa是異步流程控制不斷演進的必然產物。在所有的Node.js Web框架中,Koa無疑是最耀眼的一個。
Koa的生態是非常健全的,基于Koa編寫Web應用可以應對多種場景。如果用得極致,甚至可以基于Koa在前端領域開發各種工具。
本書內容
本書以Node.js下一代Web框架Koa為核心,主要講解Koa的基礎知識、中間件原理和應用場景,旨在向讀者展示如何基于Koa編寫出更簡單、更具工程化優勢的Web應用。
本書共分8章,每章的內容簡介如下。
第1章 下一代Web框架Koa
本章將介紹Koa框架的入門知識、優勢、應用場景,Koa腳手架的編寫方式,以及Node.js Web框架的演進過程。基于最新的AVA測試框架編寫測試用例也是本章非常有特色的一節。
第2章 Koa核心擴展機制:中間件
本章將介紹Koa的核心中間件原理,以及Koa中常用的中間件:路由、視圖、靜態服務模塊等。中間件機制是Koa的核心內容,因此本章內容非常重要。
第3章 HTTP必知必會
本章將介紹請求響應模型,也將對HTTP和HTTPS進行講解,同時以mini-proxy和hiproxy為核心對前端最常用的代理進行講解。
第4章 Koa練習
本章將結合第3章的HTTP相關知識進行Koa框架內置方法的練習,比如地址解析、參數獲取、body解析、API開發,還將介紹各種測試模塊和工具軟件的用法。
第5章 數據庫基礎
本章將介紹Node.js數據庫選型和MVC模型層的用法,以及使用Mongoose模塊操作MongoDB的方法,其中涉及Mongoose中的一些進階技巧:模型擴展、虛擬屬性、回調鉤子和插件機制。
第6章 數據庫進階
本章將在第5章的基礎上介紹數據庫中的進階技巧:分頁、關聯查詢、事務、性能調優等。通過本章大家能夠對Node.js數據庫選型掌握得更好。
第7章 前端視圖模板
本章將從public目錄講起,介紹前端相關知識,主要涉及模板編譯原理、Webpack進階知識。本章還將介紹前后端分離和服務器端渲染的演進,并提出對未來Serverless環境下前端渲染層的見解。
第8章 項目實戰
本章將以CNode項目為核心,介紹基于Egg.js框架的項目代碼,還會介紹基于Docker快速開發Node.js Web應用的方法。
本書中的各章內容基本是相互獨立的,因此各位讀者可以挑選自己感興趣的章節閱讀。這本書是《狼書》系列圖書的第2卷,第1卷主要介紹Node.js基礎知識,第3卷主要介紹Node.js高級應用。3卷搭配閱讀,效果更好。
目標讀者
本書的目標讀者有以下3類。
? 正在學習JavaScript開發,對JavaScript語言有基本的了解和熟悉度,且希望能夠了解JavaScript發展情況的人。
? 正從事JavaScript開發相關工作,熟悉JavaScript的基本開發要領,在日常工作中經常接觸Node.js,想要深入了解Web應用、BFF、API代理等內容,以進一步提升自我的Web工程師(此處不區分前端與后端)。
? 具有極客精神,想要深入研究JavaScript語言及Node.js的全棧工程師。
同時,本書也適合正使用其他編程語言(如Go、PHP、Python、Ruby、Java等)進行Web開發的工程師閱讀、學習。
閱讀準備
要想運行本書中的示例,需要安裝以下系統及軟件。
? 操作系統:推薦Linux,以及macOS 10.9或以上版本,使用Windows操作系統可能會在運行示例時報錯。
? 瀏覽器:Google Chrome、Safari、Firefox、Internet Explorer 11、Windows Edge。
? 運行環境:以Node.js 8.6版本為主。
內容簡介:

Node.js開發簡單,性能極好,一經發布便成了明星級項目。隨著大前端領域的蓬勃發展,跨平臺開發、API構建、Web應用開發等場景愈加常見,Node.js也成為大前端開發的必備“神器”。本書主要講解Node.js Web應用開發涉及的HTTP基礎知識、常用開發框架、源碼原理、數據庫和項目實戰,旨在向讀者展示如何通過Node.js和Koa編寫出更具前端特色的Web應用。本書還講解了Koa中的核心中間件原理,展望了未來Web應用開發的發展方向。基于Node.js開發Web應用具有上手簡單、開發快速、執行高效等特點,非常適合快速迭代,因此各位大前端領域及后端領域的測試、運維、軟件開發從業者都可以閱讀本書。
目錄:

第1章 下一代Web框架Koa 1
1.1 Koa簡介 1
1.1.1 應用場景 2
1.1.2 開發要點 3
1.1.3 Koa入門 4
1.1.4 為什么選擇Koa 7
1.2 Koa腳手架 8
1.2.1 安裝Koa生成器 9
1.2.2 創建Hello world 10
1.2.3 目錄解析 11
1.2.4 Koa v2中間件的寫法 20
1.2.5 路由 21
1.2.6 切換視圖模板引擎 25
1.2.7 Koa代碼調試 26
1.3 Node.js Web框架演進 29
1.3.1 Node.js http模塊 29
1.3.2 最早的Connect 29
1.3.3 曾經扛鼎的Express框架 33
1.3.4 新興Web開發框架Koa 35
1.3.5 Express和Koa大比拼 38
1.4 測試 38
1.4.1 Node.js測試框架 39
1.4.2 AVA測試框架 39
1.4.3 測試用例與斷言 40
1.4.4 實踐 41
1.4.5 更多內容 44
1.5 本章小結 48

第2章 Koa的核心擴展機制:中間件 49
2.1 中間件 49
2.1.1 什么是中間件 49
2.1.2 上下文對象 57
2.1.3 回形針一樣的中間件 66
2.1.4 常用中間件 88
2.2 路由 89
2.2.1 koa-router 89
2.2.2 路由詳解 93
2.2.3 將路由放到目錄里 98
2.3 視圖 101
2.3.1 koa-views 101
2.3.2 默認模板引擎Pug 102
2.3.3 views目錄模板說明 102
2.3.4 consolidate.js 104
2.4 靜態服務模塊 104
2.4.1 koa-static 105
2.4.2 koa-send 106
2.4.3 koa-mount 108
2.4.4 koa-serve-static 108
2.5 本章小結 109

第3章 HTTP必知必會 110
3.1 請求響應模型 110
3.1.1 請求 112
3.1.2 響應 112
3.1.3 核心要點 114
3.2 HTTPS 127
3.2.1 生成證書 129
3.2.2 驗證與自動續約 130
3.2.3 Node.js服務器HTTPS配置 131
3.2.4 Nginx HTTPS配置 132
3.2.5 Nginx HTTPS反向代理配置 134
3.3 代理 136
3.3.1 協議支持 136
3.3.2 mini-proxy 140
3.3.3 hiproxy 146
3.4 本章小結 152

第4章 Koa練習 153
4.1 基礎知識 153
4.1.1 地址 153
4.1.2 HTTP頭部 156
4.1.3 HTTP動詞 161
4.1.4 HTTP狀態碼 163
4.1.5 Cookie 164
4.2 獲取不同參數的3種方法 165
4.2.1 獲取具名參數 166
4.2.2 解析請求體 166
4.2.3 獲取查詢字符串 167
4.3 body解析 168
4.3.1 模塊依賴 168
4.3.2 原理 168
4.3.3 常見的POST 169
4.4 請求的幾種方式 175
4.4.1 表單 176
4.4.2 AJAX 176
4.4.3 命令行 177
4.4.4 HTTP模塊 178
4.4.5 工具軟件 183
4.4.6 測試 183
4.5 API開發 185
4.5.1 API的簡單寫法 185
4.5.2 響應處理 189
4.5.3 RESTful API 190
4.5.4 API訪問鑒權 192
4.5.5 OAuth鑒權 194
4.6 常用中間件 195
4.6.1 會話 196
4.6.2 ETag 198
4.6.3 驗證碼 199
4.6.4 限制訪問頻率 201
4.7 本章小結 203

第5章 數據庫基礎 204
5.1 入門 204
5.1.1 選擇哪個數據庫 204
5.1.2 了解MVC里的模型 206
5.1.3 模型的代碼 207
5.1.4 代碼組織結構 209
5.2 MongoDB的安裝與部署 210
5.2.1 安裝與部署的方式 211
5.2.2 在macOS上安裝 212
5.2.3 在Ubuntu上安裝 212
5.2.4 在Windows上安裝 213
5.2.5 更好的啟動方式 213
5.3 Mongoose基礎 214
5.3.1 簡介 214
5.3.2 入門 215
5.3.3 Hello Mongoose 218
5.3.4 核心概念 221
5.3.5 增刪改查操作 223
5.3.6 Schema的類型 232
5.4 Mongoose進階 234
5.4.1 模型擴展 234
5.4.2 虛擬屬性 237
5.4.3 回調鉤子 240
5.4.4 插件機制 244
5.5 本章小結 253

第6章 數據庫進階 254
6.1 分頁 254
6.1.1 使用skip和limit實現分頁 255
6.1.2 使用find和limit實現分頁 256
6.1.3 ObjectID的組成 257
6.1.4 客戶端生成ObjectID 259
6.2 關聯查詢 259
6.2.1 聚合函數 260
6.2.2 聚合管道 261
6.2.3 MapReduce 263
6.2.4 關聯關系 264
6.2.5 aggregation 266
6.3 事務 270
6.3.1 二階段提交法 270
6.3.2 回滾操作 273
6.4 性能調優 274
6.4.1 profile 275
6.4.2 explain 275
6.4.3 索引優化 276
6.4.4 MongoDB的連接問題 282
6.4.5 MongooseDao 289
6.4.6 異步流程控制 296
6.5 本章小結 303

第7章 前端視圖模板 304
7.1 靜態服務器 304
7.1.1 public目錄 304
7.1.2 實現原理 306
7.1.3 靜態服務 307
7.1.4 預處理中間件 314
7.2 使用模板引擎進行動態渲染 316
7.2.1 模板引擎原理 316
7.2.2 模板引擎規則 324
7.2.3 Vue 333
7.3 Webpack 342
7.3.1 解決痛點 343
7.3.2 模塊規范 344
7.3.3 模塊加載器 345
7.3.4 模塊打包器 345
7.3.5 Webpack詳解 346
7.4 前后端分離 357
7.5 前端渲染 357
7.5.1 客戶端渲染 357
7.5.2 服務器端渲染 358
7.5.3 React服務器端渲染 360
7.5.4 Serverless時代的渲染層 363
7.6 本章小結 365

第8章 項目實戰 366
8.1 入門 366
8.1.1 Docker 366
8.1.2 Docker Compose 369
8.1.3 環境變量 370
8.1.4 啟動服務器 373
8.2 Egg.js框架 373
8.2.1 使用腳手架 374
8.2.2 目錄說明 375
8.2.3 啟動服務器 379
8.2.4 代碼結構 381
8.2.5 內置對象 384
8.2.6 代碼調試 386
8.2.7 插件擴展機制 387
8.3 egg-cnode源碼 388
8.3.1 目錄約定 388
8.3.2 app目錄 390
8.3.3 數據庫連接 391
8.3.4 模型定義 392
8.3.5 從Controller到Service 393
8.3.6 視圖渲染 396
8.3.7 數據模型 399
8.3.8 API開發 400
8.3.9 測試 403
8.3.10 鑒權 404
8.3.11 后臺管理 412
8.3.12 參數校驗 412
8.4 本章小結 413
序: