複雜架構極簡化: 領域驅動設計DDD 10倍程式開發速度

複雜架構極簡化: 領域驅動設計DDD 10倍程式開發速度

出版日期:
2022/02/20
9
1,000900
查詢門市庫存
現在是你最需要了解DDD的時刻了!
當你要把一個問題拆解處理時,DDD將會是你最大的幫手。

內容簡介

現在是你最需要了解DDD的時刻了!
當你要把一個問題拆解處理時,DDD將會是你最大的幫手。

本書最大的特色就是將整個DDD分成3大類。
第一大類為業務服務。
業務服務是全域分析的基本業務單元,在統一語言的指導下完成對業務需求的抽象,既可幫助我們辨識界限上下文,又可幫助開發團隊開展領域分析建模、領域設計建模和領域實現建模。業務服務的粒度也是服務契約的粒度,由此拉近了需求分析與軟體設計的距離,甚至可以說跨越了需求分析與軟體設計的鴻溝。

第二大類為菱形對稱架構。
雖然菱形對稱架構脫胎於六邊形架構與整潔架構,但它更為簡潔,與界限上下文的搭配可謂珠聯璧合,既保證了界限上下文作為基本架構單元的自治性,又融入了上下文映射的通訊模式,極大地豐富了設計要素的角色構造型。

第三大類為服務驅動設計。
服務驅動設計採用程序式的設計思維,卻又遵循物件導向的職責分配,能在提高設計品質的同時降低開發團隊的設計門檻,完成從領域分析模型到領域實現模型的無縫轉換,並可作為測試驅動開發的前奏,讓領域邏輯的實現變得更加穩健而高效。

本書特色:
●將整個DDD分成3大類
〇破解軟體複雜度的新觀念,讓你不被程式碼糾纏人生
●了解問題空間和解答空間的觀念
〇用5個W來探索問題空間,先分析業務流程再開始設計
●充分了解Entity、Value Object、Service、Module、Factory、Repository、Aggregate和Domain Event
〇動手實作領域設計的建模、領域實現建模
●融合現在的設計團隊,建立領域驅動模型的戰略
展開看更多

產品目錄

第一篇 開篇
01 軟體複雜度剖析
1.1 什麼是複雜系統
1.2 了解能力
1.3 預測能力

02 領域驅動設計概覽
2.1 領域驅動設計的基本概念
2.2 領域驅動設計過程
2.3 控制軟體複雜度
2.4 冷靜認識

03 領域驅動設計統一過程
3.1 領域驅動設計現存的不足
3.2 領域驅動設計統一過程

第二篇 全域分析
04 問題空間探索
4.1 全域分析的5W 模型
4.2 高效溝通
4.3 高效協作

05 價值需求分析
5.1 辨識利益相關者
5.2 明確系統願景
5.3 確定系統範圍
5.4 使用商業模式畫布

06 業務需求分析
6.1 業務流程
6.2 業務場景
6.3 子領域

第三篇 架構映射
07 同構系統
7.1 概念層次的同構系統
7.2 設計層次的同構系統
7.3 管理層次的同構系統

08 系統上下文
8.1 「系統內」和「系統外」
8.2 系統上下文
8.3 系統上下文的確定

09 界限上下文
9.1 界限上下文的定義
9.2 界限上下文的特徵
9.3 界限上下文的辨

10 上下文映射
10.1 上下文映射概述
10.2 通訊整合模式
10.3 團隊協作模式
10.4 上下文映射的設計錯誤
10.5 上下文映射的確定

11 服務契約設計
11.1 訊息契約
11.2 服務契約
11.3 設計服務契約

12 領域驅動架構
12.1 菱形對稱架構
12.2 系統分層架構
12.3 領域驅動架構風格

第四篇 領域建模
13 模型驅動設計
13.1 軟體系統中的模型
13.2 模型驅動設計
13.3 領域模型驅動設計

14 領域分析建模
14.1 統一語言與領域分析模型
14.2 快速建模法
14.3 領域分析模型的精煉
14.4 領域分析模型與界限上下文

15 領域模型設計要素
15.1 領域設計模型
15.2 實體
15.3 值物件
15.4 聚合
15.5 聚合生命週期的管理
15.6 領域服務
15.7 領域事件

16 領域設計建模
16.1 角色構造型
16.2 設計聚合
16.3 服務驅動設計

17 領域實現建模
17.1 穩定的領域模型
17.2 測試優先的領域實現建模
17.3 領域建模過程
17.3.1 薪資管理系統的需求

第五篇 融合
18 領域驅動設計的戰略考量
18.1 界限上下文與微服務
18.2 界限上下文之間的分散式通訊
18.3 命令查詢職責的分離
18.4 交易

19 領域驅動設計的戰術考量
19.1 設計概念的統一語言
19.2 領域模型的持久化
19.3 資源庫的實現

20 領域驅動設計系統
20.1 領域驅動設計的精髓
20.2 領域驅動設計能力評估模型
20.3 領域驅動設計參考過程模型
20.4 複習

附錄
A 領域建模範式
A.1 結構建模範式
A.2 物件建模範式
A.3 函數建模範式

B 事件驅動模型
B.1 事件風暴
B.2 事件溯源模式
B.3 事件驅動架構

C 領域驅動設計魔方
C.1 發展過程的里程碑
C.2 領域驅動設計魔方
C.3 全域分析的魔方切面
C.4 架構映射的魔方切面
C.5 領域建模

D 領域驅動設計統一過程發表物
全域分析規格說明書
架構映射戰略設計方案

E 參考文獻

作者介紹

張逸

張逸

高品質編碼實踐者、領域驅動設計佈道師、微服務系統架構師、大數據平台架構師、敏捷轉型諮詢師,曾就職於中興通訊、惠普、思特沃克(ThoughtWorks)、民航(成都)信息等企業,致力於大型軟體企業的分佈式架構設計、領域驅動設計、大數據平台架構設計以及垂直領域的企業架構規劃與建設,並為國內外多家企業提供技術培訓與諮詢服務。

規格

誠品貨碼 / 2682130874003
ISBN13 / 9789860776843
ISBN10 / 9860776849
EAN貨碼 / 9789860776843
頁數 / 864
裝訂 / P:平裝
語言 / 1:中文/繁體
尺寸 / 23X17X3.7CM
級別 / N:無

退貨說明

退貨須知:

  1. 依照消費者保護法的規定,您享有商品貨到次日起七天猶豫期(含例假日)的權益(請注意!猶豫期非試用期),辦理退貨之商品必須是全新狀態(不得有刮傷、破損、受潮)且需完整(包含全部商品、配件、原廠內外包裝、贈品及所有附隨文件或資料的完整性等)。
  2. 請您以送貨廠商使用之包裝紙箱將退貨商品包裝妥當,若原紙箱已遺失,請另使用其他紙箱包覆於商品原廠包裝之外,切勿直接於原廠包裝上黏貼紙張或書寫文字。若原廠包裝損毀將可能被認定為已逾越檢查商品之必要程度,本公司得依毀損程度扣除回復原狀必要費用(整新費)後退費;請您先確認商品正確、外觀可接受,再行拆封,以免影響您的權利;若為產品瑕疵,本公司接受退貨。

依「通訊交易解除權合理例外情事適用準則」,下列商品不適用七日猶豫期,除產品本身有瑕疵外,不接受退貨:

  1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮蔬果、乳製品、冷凍冷藏食材、蛋糕)
  2. 依消費者要求所為之客製化給付。(如:客製印章、鋼筆刻字)
  3. 報紙、期刊或雜誌。
  4. 經消費者拆封之影音商品或電腦軟體。
  5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書)
  6. 已拆封之個人衛生用品。(如:內衣褲、襪類、褲襪、刮鬍刀、除毛刀等貼身用品)
  7. 國際航空客運服務。

若您退貨時有下列情形,可能被認定已逾越檢查商品之必要程度而須負擔為回復原狀必要費用(整新費),或影響您的退貨權利,請您在拆封前決定是否要退貨:

  1. 以數位或電磁紀錄形式儲存或著作權相關之商品(包含但不限於CD、VCD、DVD、電腦軟體等) 包裝已拆封者(除運送用之包裝以外)。
  2. 耗材(包含但不限於墨水匣、碳粉匣、紙張、筆類墨水、清潔劑補充包等)之商品包裝已拆封者(除運送用之包裝以外)。
  3. 衣飾鞋類/寢具/織品(包含但不限於衣褲、鞋子、襪子、泳裝、床單、被套、填充玩具)或之商品缺件(含購買商品、附件、內外包裝、贈品等)或經剪標或下水或商品有不可回復之髒污或磨損痕跡。
  4. 食品、美容/保養用品、內衣褲等消耗性或個人衛生用品、商品銷售頁面上特別載明之商品已拆封者(除運送用之包裝外一切包裝、包括但不限於瓶蓋、封口、封膜等接觸商品內容之包裝部分)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  5. 家電、3C、畫作、電子閱讀器等商品,除商品本身有瑕疵外,退回之商品已拆封(除運送用之包裝外一切包裝、包括但不限於封膜等接觸商品內容之包裝部分、移除封條、拆除吊牌、拆除貼膠或標籤等情形)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  6. 退貨程序請參閱【客服專區→常見問題→誠品線上退貨退款】之說明。
付款/配送

作者相關書籍