什麼是DDD?
ABP框架提供了基礎設施使基於DDD的開發更易實現。DDD在維基百科中的定義如下:
領域驅動設計(DDD) 是一種通過將實現連接到持續進化的模型來滿足複雜需求的軟件開發方法. 領域驅動設計的前提是:
- 把項目的主要重點放在覈心領域和領域邏輯上
- 把複雜的設計放在領域模型上
- 發起技術專家和領域專家之間的創造性協作,以迭代方式完善解決特定領域問題的概念模型
分層
ABP框架遵循DDD原則和模式去實現分層應用程序模型,該模型由四個基本層組成:
- 表示層:爲用戶提供接口. 使用應用層實現與用戶交互。
- 應用層:表示層與領域層的中介,編排業務對象執行特定的應用程序任務. 使用應用程序邏輯實現用例。
- 領域層:包含業務對象以及業務規則. 是應用程序的核心。
- 基礎設施層:提供通用的技術功能,支持更高的層,主要使用第三方類庫。
內容
- 領域層
- 應用層
- 應用服務
- 數據傳輸對象(DTO)
- 工作單元