COLA 4.x和DDD項目實踐精粹

在《COLA 4.x架構入門和項目實踐》專欄基礎之上,對項目開發實踐進行了提煉和總結;同時,針對其中的一些知識點進行擴展和延伸。
 
專欄介紹
領域驅動設計(Domain Driven Design - DDD)起源於2003年Eric Evans出版《領域驅動設計》。
 
領域驅動設計DDD最大的好處是將業務語義顯現化,把原先晦澀難懂的業務算法邏輯,通過領域對象、統一語言將領域概念清晰的顯性化表達出來。
 
如果整個系統都採用DDD進行領域建模,不僅代碼的可讀性和系統的可維護性會大大提升,系統之間的邊界和交互也會更加的清晰。
 
COLA 是 Clean Object-Oriented and Layered Architecture的縮寫,代表“整潔面向對象分層架構”,是來自阿里技術專家的開源項目。COLA 4.0本質就是:代碼規範+可複用組件+充血領域模型。
本技術專欄在《COLA 4.x架構入門和項目實踐》基礎之上,對基於COLA架構的項目開發實踐進行了提煉和總結;同時,針對其中的一些知識點進行擴展和延伸,包括COLA架構、CQRS模式、代碼落地實踐和建議規則、領域事件多種實現方式、聚合根工廠模式、MapStruct實體映射工具開發實踐等等。
 
 
專欄大綱
本專欄中首先總結了COLA分層架構和CQRS架構模式在DDD項目落地實踐中的一些經驗分享和建議規則;然後重點介紹了基於Guava EventBus、Spring框架中事件機制、以及Kafka消息中間件,實現領域事件的發佈訂閱功能;最後,還分享了聚合根工廠模式的必要性和開發實踐,以及推薦MapStruct實體映射工具在DDD-COLA項目中應用等等。
專欄主要內容如下:
  • 阿里開源COLA架構中模塊職責分析和建議包結構參考模型;
  • COLA分層架構、CQRS架構模式和業務調用時序圖;
  • 領域驅動設計DDD和COLA架構各模塊代碼落地實踐;
  • 領域驅動設計DDD和COLA架構落地實踐建議規則;
  • 基於Guava EventBus實現領域事件落地實踐-事件總線入門;
  • 基於Guava EventBus實現領域事件落地實踐-創建領域事件和發佈器;
  • 基於Guava EventBus實現領域事件落地實踐-創建Guava領域事件發佈器;
  • 基於Guava EventBus實現領域事件落地實踐-發佈領域事件;
  • 基於Guava EventBus實現領域事件落地實踐-訂閱並處理領域事件;
  • 基於Guava EventBus實現領域事件落地實踐-監聽領域事件併發送郵件;
  • 基於Spring ApplicationListener和ApplicationEvent實現領域事件落地實踐;
  • 基於Spring @EventListener註解實現領域事件落地實踐;
  • 基於消息中間件Kafka實現領域事件落地-配置kafka主題和生產者;
  • 基於消息中間件Kafka實現領域事件落地實踐-創建領域事件發佈器和領域事件;
  • 基於消息中間件Kafka實現領域事件落地實踐-處理領域事件;
  • 領域驅動設計DDD開發實踐-爲什麼需要引入工廠模式?
  • Order聚合、聚合根和OrderFactory工廠的詳細實現;
  • 分層架構、數據模型、轉換器和MapStruct實體映射工具;
  • MapStruct實體映射工具在COLA應用項目中的開發實踐;
  • COLA 4.x和DDD項目實踐精粹:示例項目介紹;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章