Domain Driven Design (DDD) - The first sight

以領域知識為核心建立的模型,領域專家與開發人員可藉由此模型進行交流,來確保交付的東西是公同,來確保最終設計出來的東西是共同想要達到的結果。


分為4個Layer
  • User Interface (用戶接口、表示層)
  • Application Layer(定義軟體完成的任務、流程)
  • Domain Layer(模型層,表達業務概念、狀態)
  • Infrastructure Layer(基礎設施提供以上通用功能)

層與層關係由上而下互叫,可以跨層,但不回由下往上呼叫。
而Domain Layer中的模型有三種型態 1. entity, e.g: POJO with identifier  2.  Value, e.g.: POJO without identifier 3. Service

Java 中的Spring框架通常分為三層 1. Controller 2. Service 3. DAO
對應到DDD分層,User interface對應Controller,Application與Domain 對應 Service,而 Application service 與 Domain Service, Infrastructure 對應DAO

留言

這個網誌中的熱門文章

[專案] 銀行端末系統

如何在MacOS 中自由切換不同Python版本 - pyenv + virtualenv

用 C# 控制 Win7 輸入法