洋蔥架構從六邊形架構發展而來,在中間的核心業務邏輯裡又引入了分層。對於洋蔥架構來說,應用構建在領域模型上,裡層定義介面,外層實現介面,只能外層呼叫裡層,裡層不能呼叫外層,並且裡層感知不到外層的存在。
Domain Model:業務模型,對應DDD中的Entity、值物件等
Domain Service:核心業務邏輯
Application Service:應用的輸入輸出層
User Interface/Tests/Application:介面卡層
優點:
各層職責清晰,提高了大型複雜專案的可維護性。結合DDD,使專案以領域模型為主。沒有外部依賴,方便進行單元測試。缺點:
最新評論