Web 開發者晉級之道架構模式和領域驅動設計
王西友 著
- 出版商: 機械工業
- 出版日期: 2021-08-01
- 定價: $659
- 售價: 8.5 折 $560
- 語言: 簡體中文
- 頁數: 392
- 裝訂: 平裝
- ISBN: 7111688104
- ISBN-13: 9787111688105
-
相關分類:
Domain-Driven Design
立即出貨 (庫存 < 3)
買這商品的人也買了...
-
設計模式之禪, 2/e$534$507 -
$454圖解 Java 多線程設計模式 -
$281遺留系統重建實戰 (Re-Engineering Legacy Software) -
$408使用 C# 開發搜索引擎, 2/e -
科技巨頭神器下放民間:流式處理唯一選擇 Kafka$780$616 -
$505精通 Spring:Java Web 開發與 Spring Boot 高級功能 (Mastering Spring 5, 2/e) -
$556SOD 框架企業級應用數據架構實戰 -
$347輕量級Java Web整合開發(第2版)——Spring+Spring Boot+MyB -
提升程式設計師的面試力|189道面試題目與解答, 6/e (修訂版) (Cracking the Coding Interview : 189 Programming Questions and Solutions, 6/e)$980$774 -
JavaScript 大全, 7/e (Javascript: The Definitive Guide: Master the World's Most-Used Programming Language, 7/e)$1,200$948 -
ETL 數據整合與處理 (Kettle)$299$284 -
$331Java Web程序設計(慕課版 第2版)——基於SSM(Spring+Spring MVC+MyBatis)框架 -
$356數據庫程序員面試筆試通關寶典 -
資料密集型應用系統設計 (Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems)$980$774 -
並行編程實戰 — 基於 C# 8 和 .NET Core 3$594$564 -
$710解構領域驅動設計 -
內行人才知道的系統設計面試指南$580$458 -
跟著 Docker 隊長,修練 22天就精通 - 搭配 20小時作者線上教學,無縫接軌 Microservices、Cloud-native、Serverless、DevOps 開發架構$880$695 -
程序員必讀之軟件架構$294$279 -
你所不知道的必學前端 Debug 技巧:即學即用!讓你 Debug 不求人 (iT邦幫忙鐵人賽系列書)$620$484 -
$564IT項目管理(原書第9版) -
打造高速網站從網站指標開始:全方位提升使用者體驗與流量的關鍵$600$468 -
PM 職涯發展成功手冊|卓越產品經理的技能、框架與實踐法 (Cracking the PM Career)$880$695 -
AutoML 自動化機器學習:用 AutoKeras 超輕鬆打造高效能 AI 模型 (Automated Machine Learning with AutoKeras: Deep learning made accessible for everyone with just few lines of coding)$690$545 -
ChatGPT 領軍 DALL-E 2 + Midjourney + D-ID + Synthesia:邁向 AI文字、圖像、影片之路 (全彩印刷)$500$395
中文年末書展|繁簡參展書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 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
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 -
75折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$375 -
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
相關主題
商品描述
《Web開發者晉級之道:架構、模式和領域驅動設計》系統介紹軟件的設計思想、架構和開發模式,
帶領讀者快速建立軟件開發的知識體系,另外還詳細介紹基於ASP.NET Core的項目案例開發,
幫助讀者全面掌握如何快速開發高效、穩定的Web應用程序。
《Web開發者晉級之道:架構、模式和領域驅動設計》共10章,分為2篇。
第1篇“軟件開發內功心法”,首先介紹軟件設計思想、軟件架構、面向對象編程的六大原則和設計模式等知識,
為軟件開發初學者晉級打好基礎,然後簡要介紹一個電商項目的概況和架構設計,為後續的項目開發實踐做好鋪墊。
第2篇“領域驅動設計落地”,首先介紹領域驅動設計的思想與方法,然後通過一個電商項目案例的開發實踐,
展現以領域模型為核心的Web應用程序的完整開發過程,包括基礎設施層的實現、應用程序層的實現和展示層的實現等,
後對MVC架構做詳細介紹,這些內容展現了高品質軟件開發的核心價值和麵向對象程序設計的思想價值。
《Web開發者晉級之道:架構、模式和領域驅動設計》理論結合實踐,講解深入淺出,
適合有一定C#語言基礎的Web開發人員閱讀,尤其適合想要建立軟件開發知識體係並提高開發水平的Web程序員閱讀。
另外,《Web開發者晉級之道:架構、模式和領域驅動設計》
還可以作為相關培訓機構的教材。
作者簡介
王西友
現供職於徐工集團,任主任設計師和特聘高級技術專家。
多年以來一直從事智能控制和信息化軟件的開發工作,在軟件架構、
設計模式和領域驅動設計方面有深厚的理論功底和豐富的開發經驗。
目錄大綱
前言
第1篇 軟件開發內功心法
第1章 如何開始一個軟件項目 2
1.1 軟件項目開發麵臨的挑戰 2
1.1.1 領域模型的創建 3
1.1.2 架構的選擇 4
1.1.3 軟件框架的使用 5
1.1.4 數據存儲的實現 6
1.2 小結 6
第2章 軟件如何解決問題 7
2.1 軟件的發展歷程 7
2.1.1 面向過程的編程 8
2.1.2 面向對象的編程 9
2.1.3 面向組件的編程 16
2.1.4 面向方面的編程 19
2.1.5 綜述 21
2.2 對象的意義 21
2.2.1 對象和類型 22
2.2.2 對象的創建和生命週期的控制 23
2.2.3 對象的依賴 26
2.3 組件 26
2.3.1 接口與實現分離 27
2.3.2 接口分解 30
2.3.3 接口的多重實現與繼承 33
2.3.4 接口與契約式編程 34
2.4 小結 35
第3章 軟件架構 36
3.1 軟件架構概述 36
3.1.1 軟件架構的定義 36
3.1.2 軟件架構風格和架構模式 38
3.1.3 4 1視圖 40
3.2 主流軟件架構簡介 41
3.2.1 分層架構 41
3.2.2 MVC架構 45
3.2.3 REST架構 47
3.2.4 微服務架構 52
3.3 小結 54
第4章 面向對象的設計模式和原則 55
4.1 重用 55
4.1.1 繼承重用 56
4.1.2 組合重用 60
4.1.3 模式重用 62
4.2 面向對象的設計原則 63
4.2.1 單一職責原則 63
4.2.2 開閉原則 65
4.2.3 裏氏代換原則 67
4.2.4 依賴倒置原則 71
4.2.5 接口隔離原則 73
4.2.6 迪米特法則 75
4.3 設計模式 79
4.3.1 設計模式的定義 80
4.3.2 設計模式的分類和應用 80
4.3.3 如何使用設計模式 81
4.4 小結 81
第5章 項目概況與架構設計 83
5.1 iShopping項目 83
5.1.1 項目簡介 83
5.1.2 用Java還是.NET Core 84
5.1.3 集成開發環境 85
5.2 iShopping的架構設計 86
5.2.1 領域驅動設計和邏輯視圖 86
5.2.2 開發視圖 88
5.2.3 進程視圖 89
5.2.4 物理視圖 91
5.2.5 場景視圖 92
5.3 小結 93
第2篇 領域驅動設計落地
第6章 領域模型 96
6.1 領域驅動設計 96
6.2 領域對象的識別與創建 98
6.2.1 實體對象 99
6.2.2 實體對象的標識和替換 104
6.2.3 值對象 108
6.2.4 用值對象封裝複雜的邏輯 114
6.3 整體設計 124
6.3.1 領域的劃分 125
6.3.2 限界上下文 127
6.3.3 限界上下文的映射 128
6.4 聚合 142
6.4.1 聚合對象 142
6.4.2 使用聚合對象實現限界上下文 143
6.4.3 聚合對象之間的導航 151
6.4.4 聚合內部對象的實現和引用 156
6.5 領域服務對象 157
6.5.1 領域服務 158
6.5.2 領域服務和應用服務 160
6.5.3 領域服務與貧血模型 161
6.6 領域事件 163
6.6.1 領域事件簡介 164
6.6.2 領域事件的發布和訂閱 166
6.7 領域對象的生命週期 176
6.7.1 工廠和構建器 176
6.7.2 倉儲對象 179
6.8 小結 182
第7章 綜合運用領域模型 183
7.1 商品目錄上下文的實現 183
7.1.1 商品分類聚合的實現 184
7.1.2 商品聚合的實現 192
7.2 訂單上下文的實現 202
7.2.1 購物車聚合的實現 204
7.2.2 訂單聚合的實現 210
7.2.3 訂單優惠聚合的實現 224
7.2.4 訂單費用計算服務的實現 229
7.3 小結 232
第8章 基礎設施層的實現 233
8.1 基礎設施層的創建 233
8.2 數據存儲 234
8.2.1 數據庫設計範式 235
8.2.2 事務 238
8.2.3 NoSQL數據庫 240
8.3 對象關係映射 241
8.3.1 對象-數據庫阻抗失配 241
8.3.2 對象關係映射的困難 242
8.3.3 傳統的數據訪問技術ADO.NET 243
8.4 Entity Framework Core框架 247
8.4.1 Entity Framework Core的引用 247
8.4.2 Entity Framework Core簡介 249
8.4.3 實現自定義數據上下文 252
8.4.4 實現對象倉儲 270
8.5 MongoDB應用 280
8.5.1 MongoDB數據庫 281
8.5.2 使用MongoDB實現對象倉儲 283
8.6 RabbitMQ應用 287
8.6.1 RabbitMQ的安裝和配置 288
8.6.2 使用RabbitMQ實現事件總線 290
8.7 使用第三方WebAPI 297
8.7.1 WebAPI訪問技術 297
8.7.2 使用WebAPI實現運輸距離的計算 300
8.8 小結 303
第9章 應用程序層的實現 304
9.1 應用程序層簡介 304
9.1.1 應用程序層和應用服務 306
9.1.2 應用服務的接口形式 310
9.1.3 CQRS風格的應用服務 312
9.1.4 事件存儲 317
9.2 實現查詢的方法 319
9.2.1 對象的映射 319
9.2.2 查詢過濾器 321
9.2.3 數據代理 327
9.2.4 查詢門面 334
9.3 小結 341
第10章 展示層和MVC框架 342
10.1 ASP.NET Core MVC框架 342
10.1.1 路由 343
10.1.2 MVC簡介 346
10.1.3 控制器 349
10.1.4 控制器和領域模型 352
10.1.5 視圖和模型 354
10.1.6 OWIN和反向代理 358
10.2 ASP.NET Core MVC項目 361
10.2.1 搭建MVC 362
10.2.2 依賴註入容器 367
10.2.3 搭建前端開發框架 371
10.3 控制器和視圖的實現 372
10.3.1 控制器和視圖 373
10.3.2 視圖的表單提交 377
10.3.3 視圖與服務器的異步通信 379
10.4 小結 382
