天天看點

領域驅動設計DDD-開源COLA架構落地實踐規則通過項目實踐,整理出來的一些規則,供參考。*adapter層的作用是接受

作者:軟體架構

領域驅動設計DDD-開源COLA架構落地實踐規則

通過項目實踐,整理出來的一些規則,供參考。

* adapter層的作用是接受外部請求,相當于六邊形架構中的adapter擴充卡;業務邏輯沉澱到application層和domain層中,adapter層隻是協定,要薄;

* application層的作用是編排業務,負責業務流程串聯,不負責業務邏輯;

* domain層是業務規則的集合,application service編排業務,domain service編排領域;

* domain展現在業務語義顯現化,不僅僅是一堆代碼,代碼即文檔、代碼即業務;

* 應用要達到高内聚就得充分發揮domain層的優勢,domain層不單單是domain service,還有aggregate root(聚合根)、entity(實體)和value object(值對象);

* 領域對象提供了簡單的單實體業務邏輯,将多實體的複雜業務邏輯放到domain service中;

* 領域對象應該是一個純記憶體操作,不依賴于Repository,這樣提高了領域對象的可測試性;

* infrastructure層是基礎設施層,為其他層提供通用的技術能力:程式設計架構,持久化機制,消息機制,外部服務的封裝,通用算法等等;

* 封裝CRUD操作為gateway,接口在domain層中定義,具體實作在Infrastructure層,這也服務整潔架構;

* 通過application層串聯業務流程;

* 通過adapter提供對外接口;

《COLA 4.x架構入門和項目實踐》技術專欄首先介紹了COLA架構的使用入門,以及與IDEA開發工具的內建等等;然後基于COLA架構,建立DDD經典示例項目-貨物運輸系統,詳細介紹了DDD領域模組化、适配層、應用層、領域層和基礎設施層的代碼開發、防腐層(ACL)設計與實作、領域事件(Domain Event)入門實踐、以及基于Kafka消息中間件的消息釋出和訂閱等等。内容由淺入深,從開發實戰出發,逐漸掌握基于COLA架構和DDD領域模組化思想建構複雜業務應用系統。

領域驅動設計DDD-開源COLA架構落地實踐規則通過項目實踐,整理出來的一些規則,供參考。*adapter層的作用是接受
領域驅動設計DDD-開源COLA架構落地實踐規則通過項目實踐,整理出來的一些規則,供參考。*adapter層的作用是接受
領域驅動設計DDD-開源COLA架構落地實踐規則通過項目實踐,整理出來的一些規則,供參考。*adapter層的作用是接受
領域驅動設計DDD-開源COLA架構落地實踐規則通過項目實踐,整理出來的一些規則,供參考。*adapter層的作用是接受