2015-07-03 100 views
3

想象一下,在DDD啓發式系統中,我們獲得了多個有界上下文,每個上下文都有一個「Person」域對象的變體。域驅動設計 - 常見行爲

我們如何去設計所有這些不同的Person對象的共同行爲?

我們是否在每個Person類中重複該行爲,或者我們是否使用類似Domain Service的東西?我有點困惑。

請分享您的想法。

+2

您可能想要依賴共享內核,但不要忘記重用是耦合。少量的重複通常會比試圖消除所有這些都好。 – plalx

+2

如果有界的上下文是有區別的,那麼不要害怕,並寫兩次代碼。 –

+0

請分享具體人員的樣本。 – Yorro

回答

0

挑戰您共享有界的上下文。不要陷入不正確的人羣 - 認爲單獨的有限背景是常見的,因此必須到處都是。人們聽說他們很重要,所以我必須有一些!

在一個領域模型中,有許多方法來模擬不同角色(上下文)中的事物,人員和地點。這是領域建模中最常見的問題之一。

一個人可以扮演(參與)客戶,供應商,團隊成員,獎勵獲得者和社會團體成員。

一個機場大門可能是一個DepartureGate,ArrivalGate,也許有時是EmergencyGate。

產品可以是ProductBeingSold,ProductBeingReturned,ProductUnderDevelopment。

所有這些通常建模在代表所考慮問題的單個域中。