標記我的聚合根與1; 2; 3。看起來相當不錯 - 幾乎像葡萄。DDD建模,聚合根之間的相互作用
事情我不喜歡的是,標有1紅色箭頭的實體。
讓我們想象一下:
- AR#1是公司
- AR#2是辦公
- AR#3是員工
- 實體標有紅色箭頭被命名爲
Country
- 公司制定僱用員工國家的規則(在招聘時,
company.Countries.Contains(employee.Country)
必須爲真)
- 公司制定僱用員工國家的規則(在招聘時,
不知何故,我看到域的這相當不重要的部分(也許這聽起來不像在這個例子中的一個),我想,以避免促進國家對總根源。
Glossary關於聚合根說:
到內部成員瞬態引用可以只對單個操作中使用傳遞出去。
因此 - 是否引入'EmployeeCountry'之類的東西,刪除對公司國家的引用,並檢查員工國家是否與任何公司國家在招聘操作上相符合聽起來是合理的?
還有其他想法嗎?
我怎樣才能讓我的葡萄看起來像他們應該?
究竟發生了什麼變化?多給一點細節。 :) – 2010-08-20 16:56:33
嘿,對不起,這麼簡潔。我有點提示你瞭解更多細節。 :)我的立場是,你所描述的設計沒有任何問題。你對目前的設計不喜歡什麼?你爲什麼認爲你可能需要將國家推廣到一個聚合根? – 2010-08-20 16:58:18
原因2聚合根不應引用相同的實體。這不正確嗎?價值對象有什麼不同? – 2010-08-20 17:02:57