DDD領域設計筆記
阿新 • • 發佈:2022-03-04
DDD-1 ubiquitous language(領域通用語言)
DDD-2 分而治之,拆小單元 歸併排序(兩兩一組對比)
POP 面向過程程式設計 線性思維 越來越複雜
OOP 面向物件程式設計
DDD -擴大邊界 ,講物件組成領域,程式分析設計更輕鬆
DDD的拆分不是類,是邊界
領域專家(業務專家)
Domain Drivern Design (理解領域(業務)-》拆分領域=》拆分子域-》根據領域進行設計-》組裝)
1.針對OOAD (Object Oriented Analysis Design)面向物件分析與設計的擴充套件和延伸
2.對技術架構進行分層規劃
3.對每個類進行策略和型別的劃分 --Entity DTO Repository
unitofwork CQRS 事件匯流排
領域就是問題域(業務概念),解決某個特定問題
一個問題可以拆分多個子問題--拆分子域
基於領域去設計
1.按照領域進行設計
2.每個領域進行組裝
基於領域去驅動
1.領域驅動設計 不考慮技術
2.領域驅動程式碼 程式碼照著領域要求實現
DDD(理解,拆分,細化)
1.只做需求開發,不管技術
2.基於領域做程式相關設計
3.實現領域-》模組化組裝(ABP vNext 模式)
細化子域步驟:
1.領域概念:統一概念(詞彙)
2.業務規則:物件屬性規則
3.業務場景:使用者對應哪些場景
4.業務流程:業務需要哪些流程