領域驅動設計 業務建模與架構實務
王紅亮
- 出版商: 機械工業
- 出版日期: 2023-11-16
- 定價: $654
- 售價: 7.9 折 $517
- 語言: 簡體中文
- 頁數: 372
- 裝訂: 平裝
- ISBN: 7111737547
- ISBN-13: 9787111737544
-
相關分類:
Domain-Driven Design
立即出貨
買這商品的人也買了...
-
使用者故事對照 (User Story Mapping: Discover the Whole Story, Build the Right Product)$580$458 -
$234軟件開發本質論:追求簡約、體現價值、逐步構建 (The Nature of Software Development: Keep It Simple, Make It Valuable, Build It Piece by Piece) -
$564深入實踐 DDD:以 DSL 驅動復雜軟件開發 -
CQRS 命令查詢職責分離模式 (Command Query Responsibility Segregation)$500$390 -
$534高效能團隊模式:支持軟件快速交付的組織架構 (Team Topologies: Organizing Business and Technology Teams for Fast Flow) -
Mike Cohn 的使用者故事:敏捷軟體開發應用之道 (User Stories Applied : For Agile Software Development)$600$468 -
複雜架構極簡化:領域驅動設計(DDD)10倍程式開發速度$1,000$790 -
$454業務架構·應用架構·數據架構實戰, 2/e -
$403業務架構解構與實踐 -
領域驅動設計學習手冊 (Learning Domain-Driven Design)$580$458 -
$505敏捷組織設計:面向數字化轉型和持續交付的組織重構 -
C# 函數式編程, 2/e (Functional Programming in C#, 2/e)$768$730 -
SRE 實踐與開發平台指南:從團隊協作、原則、架構和趨勢掌握全局,做出精準決策$620$484 -
重構的時機與實作|五行程式碼規則 (Five Lines of Code: How and When to Refactor)$680$537 -
商業分析師的數位轉型專案策略:結合 ChatGPT 從商業分析到需求工程管理實務$650$429 -
$359程序員的制勝技 -
$588設計應變 產品體驗設計實戰錄 -
精實執行|精實創業指南, 3/e (Running Lean: Iterate from Plan A to a Plan That Works, 3/e)$580$458 -
從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【軟精裝】$720$562 -
最強 AI 投資分析:打造自己的股市顧問機器人,股票趨勢分析×年報解讀×選股推薦×風險管理$750$593 -
左耳聽風:傳奇程序員練級攻略$528$502 -
$459大規模組織 DevOps 實踐, 2/e -
$403智能交通及其解決方案 -
創新驅動設計:單體與微服務混合架構策略與實踐$690$656 -
API 設計模式|簡化整合的訊息交換技術 (Patterns for API Design: Simplifying Integration with Loosely Coupled Message Exchanges)$850$672
中文年末書展|繁簡參展書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
相關主題
商品描述
內容簡介這是一本從業務和架構視角講解DDD的基本原則、底層邏輯、落地難點、落地方法和進階技巧的實戰性著作。
DDD的理論體系複雜,學習和實踐門檻較高,已有的關於DDD的著作或多或少存在理論描述難以理解、
案例示範難落地等問題,阻礙了DDD在實踐中的應用。
本書作者有20餘年的軟件研發經驗,對DDD有深刻的理解,深諳DDD實踐過程中的痛點,
他在這本書中高屋建瓴、化繁為簡,讓讀者有撥雲見霧之感。
理論部分(第1~3章)從軟件工程的基本思想出發,首先分析了DDD產生的原因,並由此推論出DDD的基本原則,
這些內容是學習本書的基礎;緊接著分析了DDD落地的困難點,幫助讀者掃清障礙;
然後提煉出了DDD的成熟度模型,包括DDD的戰略、戰術和衡量指標。
這些內容極具針對性和獨創性,是研發團隊必須掌握的,也是目前同類書中很少講的。
實戰部分(第4~10章)從業務建模和架構的角度切入,首先用搭積木的方式講解和演示了DDD項目由簡易到復雜的落地過程,
包含大量的業務建模場景和案例,涉及如何應用通用語言、如何建模領域邏輯、
如何應用上下文和子域切分系統以及如何保持語言、模型、程式碼的一致性等重要內容;
然後講解如何將各種設計模式應用到DDD中,以及如何設計出能讓DDD更好落地的系統架構。
這些內容兼具實操性和思想性,充滿經驗和智慧,在同類書中同樣也不多見。
作者簡介
王紅亮,資深軟件開發專家,有超過20年的產品研發經驗。現任職於亞信雲,擔任研發總監;曾就職微軟、中信科技等企業。身為科技領頭人,成功研發交付多款網絡商業軟件,如多雲管理平臺SmartCloud、中信產業網絡平臺等。 DDD領域的資深專家,對DDD有非常深刻的理解。此外,他在研發管理、架構設計、雲端運算等領域也累積了大量的一線實戰經驗。 《微軟軟件研發的奧秘MSF》譯者,企業上雲寶典《雲鑑》作者之一,北京交通大學軟件學院優秀企業講師。
目錄大綱
目錄 Contents
前言
第1章 DDD的基本原則與價值分析1
1.1 DDD的初心1
1.1.1 軟件專案成敗的關鍵1
1.1.2 兩個亟須驗證的事實3
1.2 DDD的基本原則6
1.2.1 DDD的兩個基本原則7
1.2.2 原則的底層邏輯10
1.3 DDD的價值分析12
1.3.1 複雜度控制12
1.3.2 架構原則16
1.3.3 團隊協作20
1.4 關於DDD原則的案例23
第2章 DDD落地困難分析35
2.1 DDD的適用範圍35
2.1.1 領域特性36
2.1.2 團隊成熟度38
2.1.3 適用性評分錶39
2.2 5個常見迷思39
2.3 文化的變革44
2.3.1 領域專家的邊界44
2.3.2 設計師的鐵鎚46
2.3.3 開發人員的輪子47
2.4 團隊的挑戰48
2.4.1 管理者的責任48
2.4.2 開發團隊的意識與技能50
2.4.3 角色重新定位51
2.5 測試、流程與架構的佳搭檔52
2.5.1 測試的佳搭檔:TDD和單元測試52
2.5.2 過程的佳搭檔:敏捷流程與DevOps54
2.5.3 架構的佳搭檔:六角形、洋蔥與分層架構56
第3章 DDD成熟度模型59
3.1 成熟度模型的目的及特殊性59
3.2 5個度量維度60
3.3 3級成熟度模型63
第4章 模型的要素—用例、視圖與建構塊68
4.1 模型的建構步驟68
4.2 模型的場景:用例69
4.2.1 用例的定義69
4.2.2 用例的目的70
4.2.3 發現用例72
4.2.4 用例的編寫73
4.3 模型的資料:類別圖76
4.3.1 屬性77
4.3.2 方法78
4.3.3 註釋、約束與關鍵字79
4.3.4 依賴與限定關聯80
4.3.5 聚合與組合82
4.4 模型的行為:交互圖83
4.4.1 時序圖84
4.4.2 協作圖89
4.4.3 交互圖與類別圖的關係91
4.5 模型的變化:操作契約92
4.5.1 作用93
4.5.2 後置條件94
4.5.3 準則94
4.6 模型的建構塊:實體、值物件、領域服務95
4.6.1 實體95
4.6.2 值物件99
4.6.3 實體與值物件的比較103
4.6.4 領域服務105
第5章 從語言到模型—基礎模型建構108
5.1 設計目標108
5.2 設計之前的準備工作110
5.2.1 語言110
5.2.2 角色111
5.2.3 溝通111
5.2.4 方法113
5.2.5 工具113
5.2.6 時間115
5.3 領域模型的建構115
5.3.1 發掘領域概念116
5.3.2 創建關聯118
5.3.3 定義屬性123
5.3.4 分配職責125
5.3.5 觸發事件128
5.3.6 處理異常134
5.4 典型的領域邏輯建模137
5.4.1 規則與約束137
5.4.2 流程與分支140
5.4.3 驗證與篩選142
5.4.4 演算法與計算144
5.4.5 時間與空間146
5.4.6 有狀態與無狀態149
5.4.7 同步與異步150
5.5 典型案例151
5.5.1 案例1:線上購物網站152
5.5.2 案例2:汽車租賃系統153
5.5.3 案例3:銀行體系154
第6章 精煉模型—深入模型設計156
6.1 模型引力場:聚合156
6.1.1 聚合的定義及作用157
6.1.2 聚合規則158
6.1.3 聚合設計法則158
6.1.4 實作方法161
6.2 模型組裝線:工廠163
6.2.1 為什麼需要工廠163
6.2.2 廠址選擇169
6.3 模型貨架:儲存庫171
6.3.1 為什麼需要儲存庫171
6.3.2 儲存庫接口175
6.3.3 儲存庫與工廠的區別176
6.3.4 儲存庫與資料存取對象的差異177
6.3.5 儲存庫實作的註意事項177
6.4 富二代的煩惱:基底類別與繼承178
6.4.1 抽象、泛化與DDD178
6.4.2 通用語言與基底類別179
6.4.3 為多態去繼承181
6.4.4 合格的子類別、自然的繼承關係:Liskov原則182
6.4.5 抽象類別與接口的選擇183
6.5 模型品質:優良的開發組件 184
6.5.1 精心設計領域模型的特徵184
6.5.2 模型設計的基本原則186
6.5.3 為擴展性設計188
第7章 分而治之—上下文、模組與子域191
7.1 分離用例、模型與團隊:上下文191
7.1.1 什麼是上下文191
7.1.2 為什麼需要上下文193
7.1.3 上下文的辨識方法195
7.1.4 辨識上下文的步驟199
7.1.5 同一上下文工作法200
7.1.6 跨情境團隊工作法202
7.2 重用性與穩定性:模組207
7.2.1 包的內聚性原則207
7.2.2 包的耦合原則209
7.3 區別特殊性與一般性:子域211
7.3.1 核心競爭力:核心域211
7.3.2 週邊業務:支撐域215
7.3.3 通用能力:通用域215
7.4 上下文、模組和子域之間的關係216
7.4.1 上下文和子域的關係216
7.4.2 上下文和模組的關係216
7.4.3 子域和模組的關係217
第8章 關鍵細部—從模型到程式碼218
8.1 DDD 中的程式碼要求
