NestJS 全棧開發解析 : 快速上手與實踐
溫健民
- 出版商: 清華大學
- 出版日期: 2024-09-01
- 定價: $594
- 售價: 7.9 折 $469
- 語言: 簡體中文
- 頁數: 333
- ISBN: 7302671001
- ISBN-13: 9787302671008
-
相關分類:
Node.js
-
相關翻譯:
再上一層樓 - 用 NestJS 快速建構高效可擴充伺服器應用 (繁中版)
立即出貨
買這商品的人也買了...
-
學徒模式-優秀軟體開發者的養成之路 (Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman)$420$332 -
$312Web API 的設計與開發 (Web API : the Good Parts) -
單元測試的藝術, 2/e (The Art of Unit Testing: with examples in C#, 2/e)$650$507 -
$356pytest 測試實戰 -
$301PHP Web 安全開發實戰 -
$403Python Web 自動化測試入門與實戰 -
$454Spring Cloud 微服務架構實戰派 -
Python for DevOps|學習精準有效的自動化 (Python for Devops: Learn Ruthlessly Effective Automation)$780$616 -
$403Python 自動化測試入門與進階實戰 -
$564精通 Python 自動化編程 -
$407OpenCV 圖像處理入門與實踐 -
$653Django + Vue.js 實戰派 — Python Web 開發與運維 -
MLOps 實踐 — 機器學習從開發到生產 (全彩)$636$604 -
Python FastAPI 構建數據科學應用$534$507 -
大數據技術及架構圖解實戰派$876$832 -
NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式 (iThome鐵人賽系列書)$620$484 -
Pixi.js 讓新手也能寫出好遊戲$880$695 -
$387DevOps持續萬物 -
$449客服域人工智能訓練師, 2/e -
輕量又漂亮的 Python Web 框架 - Streamlit AI 時代非學不可$690$545 -
軟體工程師求職策略大全:透過外商面試題目演練、手把手履歷教學,跟招募員過招、白板解題、薪資談判到入職準備,帶讀者用最有效的方式找工作$680$530 -
無瑕的程式碼 軟體工匠篇:程式設計師必須做到的紀律、標準與倫理 (Clean Craftsmanship: Disciplines, Standards, and Ethics)$720$562 -
LangChain 實戰派:大語言模型 + LangChain + 向量數據庫$534$507 -
分佈式系統實戰派 — 從簡單系統到復雜系統$648$616 -
原生全端開發 - 使用 Node.js 建立最漂亮強大的網站$1,080$853
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$576 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
"《NestJS全棧開發解析:快速上手與實踐》旨在幫助讀者快速掌握NestJS(簡稱Nest)開發,並應用於實戰項目。本書共10章,首先介紹基本概念,為讀者打下堅實的知識基礎。接著,通過簡潔的代碼示例進行知識點的串聯講解,幫助讀者快速剋服學習瓶頸。最終,通過實踐能力和工程思維的培養,幫助讀者將知識從線性結構轉變為網狀結構,形成以Nest為基礎的全棧知識體系。 《NestJS全棧開發解析:快速上手與實踐》採用通俗易懂的點線面知識構建方式進行講解,適合從事前端開發和Node.js開發的工程師學習,同時也適合有意向學習Nest全棧知識的開發者。"
作者簡介
溫健民,畢業於廣東海洋大學計算機系,擁有5年前端開發經驗,先後在某因特網公司擔任前端工程師和前端技術leader職位。在Vue、React以及前端工程化方面有著深入的研究。同時是掘金技術博主,Nest技術愛好者,也是hello-algo算法開源項目的貢獻者。
目錄大綱
目 錄
第1部分 基礎篇
第1章 需要提前掌握的知識 2
1.1 Node中的請求與響應對象 2
1.1.1 原生Node處理HTTP請求 2
1.1.2 Express處理HTTP請求 4
1.1.3 Nest處理HTTP請求 7
1.2 TypeScript基礎與應用 7
1.2.1 TypeScript編譯 8
1.2.2 TypeScript類型系統 9
第2章 Nest初識 15
2.1 什麼是Nest 15
2.1.1 Nest概述 15
2.1.2 Nest的主要特點 15
2.1.3 Nest的應用場景 16
2.2 快速上手Nest CLI 16
2.2.1 Nest CLI的安裝 16
2.2.2 創建項目 17
2.2.3 生成指定的代碼片段 19
2.2.4 構建應用 22
2.2.5 啟動開發調試 24
2.2.6 查看項目信息 25
2.3 創建第一個Nest應用 25
2.3.1 生成後端項目 26
2.3.2 生成前端項目 26
2.3.3 準備工作 27
2.3.4 運行結果 29
2.3.5 模塊化開發 30
2.4 Nest的AOP架構理念 32
2.4.1 MVC架構概述 32
2.4.2 AOP解決的問題 33
2.4.3 AOP在Nest中的應用 33
2.5 IoC思想解決了什麼問題 40
2.5.1 IoC核心思想概述 40
2.5.2 IoC在Nest中的應用 41
2.6 學會調試Nest應用 44
2.6.1 Chrome DevTools調試 44
2.6.2 VS Code調試 46
2.6.3 擴展調試技巧 48
第3章 Nest核心概念介紹 51
3.1 貫穿全書的裝飾器 51
3.1.1 基本概念 51
3.1.2 裝飾器的種類 51
3.1.3 Nest中的裝飾器 59
3.2 井然有序的模塊化 60
3.2.1 基本概念 60
3.2.2 創建模塊 61
3.2.3 共享模塊 62
3.2.4 全局模塊 64
3.2.5 動態模塊 65
3.3 控制器與服務的默契配合 66
3.3.1 基本概念 66
3.3.2 Controller管理請求路由 67
3.3.3 Controller處理請求參數與請求體 68
3.3.4 Service處理數據層 70
3.3.5 服務與服務提供者 71
3.4 耳熟能詳的中間件 71
3.4.1 類中間件 71
3.4.2 函數式中間件 74
3.4.3 局部中間件 74
3.4.4 全局中間件 74
3.5 攔截器與RxJS知多少 75
3.5.1 基本概念 75
3.5.2 創建項目 76
3.5.3 攔截器的基本使用方法 76
3.6 數據之源守護者:管道 79
3.6.1 基本概念 79
3.6.2 內置管道 80
3.6.3 自定義管道 88
3.7 Nest實現文件上傳 89
3.7.1 初識Multer 89
3.7.2 單文件上傳 91
3.7.3 多文件上傳 94
3.7.4 上傳任意文件 98
3.7.5 文件驗證 99
第2部分 進階篇
第4章 Nest與數據庫 102
4.1 快速上手MySQL 102
4.1.1 安裝和運行 102
4.1.2 MySQL的常用命令 105
4.1.3 可視化操作MySQL 107
4.2 MySQL表之間的關系 112
4.2.1 一對一關系 112
4.2.2 一對多/多對一關系 119
4.2.3 多對多關系 121
4.3 快速上手TypeORM 126
4.3.1 基本概念 126
4.3.2 項目準備 126
4.3.3 創建模型及實體 126
4.3.4 定義數據列及類型 127
4.3.5 連接數據庫 128
4.3.6 使用Repository操作CRUD 129
4.3.7 使用QueryBuilder操作CRUD 131
4.4 使用TypeORM處理多表關系 134
4.4.1 一對一關系 134
4.4.2 一對多/多對一關系 140
4.4.3 多對多關系 142
4.5 在Nest中使用TypeORM操作MySQL 144
4.5.1 項目準備 144
4.5.2 使用EntityManager操作實體 147
4.5.3 使用Repository操作實體 148
4.5.4 使用QueryBuilder操作實體 151
第5章 性能優化之數據緩存 154
5.1 快速上手Redis 154
5.1.1 安裝和運行 154
5.1.2 Redis的常用命令 155
5.2 在Nest中使用Redis緩存 162
5.2.1 項目準備 162
5.2.2 Redis初始化 164
5.2.3 建表並構建緩存 165
5.2.4 運行代碼 167
5.2.5 設置緩存有效期 169
5.2.6 選擇合理的有效期 170
第6章 身份驗證與授權 171
6.1 Cookie、Session、Token、JWT、SSO詳解 171
6.1.1 什麼是身份驗證 171
6.1.2 什麼是授權 172
6.1.3 什麼是憑證 172
6.1.4 什麼是Cookie 172
6.1.5 什麼是Session 173
6.1.6 Session與Cookie的區別 173
6.1.7 什麼是Token 174
6.1.8 什麼是JWT 176
6.1.9 JWT與Token的區別 177
6.1.10 什麼是SSO 177
6.2 基於Passport和JWT實現身份驗證 180
6.2.1 基本概念 181
6.2.2 項目準備 181
6.2.3 用本地策略實現用戶登錄 182
6.2.4 用JWT策略實現接口校驗 184
6.2.5 代碼優化 188
6.3 基於RBAC實現權限控制 191
6.3.1 基本概念 191
6.3.2 數據表設計 192
6.3.3 項目準備 193
6.3.4 創建實體 194
6.3.5 啟動服務 196
6.3.6 實現角色守衛控制 196
6.3.7 生成測試數據 200
6.3.8 測試效果 202
第7章 系統部署與擴展 203
7.1 快速上手Docker 203
7.1.1 初識Docker 203
7.1.2 安裝Docker 204
7.1.3 Docker的使用 205
7.2 快速上手Dockerfile 209
7.2.1 Docker的基本概念 209
7.2.2 Dockerfile的基本語法 210
7.2.3 Dockerfile實踐 210
第3部分 擴展篇
第8章 單元測試與端到端測試 216
8.1 重新認識單元測試 216
8.1.1 什麼是單元測試 216
8.1.2 為什麼大部分公司沒有進行單元測試 217
8.1.3 為什麼要編寫單元測試 217
8.1.4 先編寫單元測試還是先編寫代碼 218
8.1.5 測試驅動開發 219
8.2 在Nest中使用Jest編寫單元測試 220
8.2.1 初識Jest 220
8.2.2 項目準備 223
8.2.3 編寫測試用例 224
8.2.4 實現業務代碼 225
8.2.5 重構代碼 229
8.3 集成測試 230
8.3.1 編寫測試用例 230
8.3.2 測試效果 232
8.4 端到端測試 232
8.4.1 編寫測試用例 233
8.4.2 實現業務代碼 235
第9章 日誌與錯誤處理 237
9.1 如何在Nest中記錄日誌 237
9.1.1 為什麼要記錄日誌 238
9.1.2 內置日誌器Logger 238
9.1.3 定製日誌器 240
9.1.4 記錄日誌的正確姿勢 241
9.1.5 第三方日誌器Winston 241
9.2 Winston日誌管理實踐 241
9.2.1 Winston的基礎使用 242
9.2.2 本地持久化日誌 244
9.3 面向切麵日誌統計實踐 248
9.3.1 中間件日誌統計 248
9.3.2 攔截器日誌統計 249
9.3.3 過濾器日誌統計 251
第4部分 Nest項目實戰篇
第10章 數字門店管理平臺開發 254
10.1 產品需求分析與設計 254
10.1.1 產品需求說明 254
10.1.2 功能原型圖 255
10.2 技術選型與項目準備 262
10.2.1 前端技術選型 262
10.2.2 初始化前端項目 262
10.2.3 前端架構設計 263
10.2.4 後端技術選型 264
10.2.5 初始化後端項目 265
10.2.6 後端架構設計 266
10.3 API接口及數據庫表設計 268
10.3.1 API接口功能劃分 268
10.3.2 數據庫設計 269
10.4 實現註冊登錄 273
10.4.1 頁面效果展示 273
10.4.2 接口實現 281
10.5 實現用戶與角色模塊 290
10.5.1 頁面效果展示 290
10.5.2 表關系設計 295
10.5.3 接口實現 299
10.6 實現商品與訂單模塊 303
10.6.1 頁面效果展示 304
10.6.2 表關系設計 306
10.6.3 接口實現 307
10.7 基於Redis實現商品熱銷榜 315
10.7.1 頁面效果展示 316
10.7.2 接口實現 317
10.8 實現活動模塊與定時任務 320
10.8.1 頁面效果展示 320
10.8.2 表關系設計 322
10.8.3 接口實現 323
10.9 使用Docker Compose部署項目 325
10.9.1 編寫後端Docker Compose文件 325
10.9.2 編寫Dockerfile文件 330
完結語:是終點,更是新的起點 334
一個小小的決定 334
時間的杠桿 334
結語 334



