2014-02-14 56 views
0

當我看看我們的辦公室時,我立即想到了一些實體和價值對象。什麼是聚合的現實世界比喻?

例如,一個post-its塊中的空post-it肯定是一個value對象,因爲它無法與同一塊上的任何其他空post-it進行區分,我也不在乎在所有關於其中後我使用,如果我需要一個空的。

相比之下,我和我的同事確實是實體,因爲我們每個人都有自己的身份。

一張表可能是一個實體或一個值對象,具體取決於您查看它的方式(它是否與其他表格完全相同,還是表表?)。

當然,YMMV。

因此,現在我已經發現了一些與實體和值對象相似的現實世界類比 - 對於聚合會有什麼比喻?有一個嗎?

我可以想象得到什麼是實際的聚合的想法有助於理解它背後的概念。

有什麼建議嗎?

+1

這個問題似乎是題外話,因爲它是概念性的,更好地問在http://programmers.stackexchange.com/ –

回答

5

藍皮書中的示例:一輛汽車。

汽車(實體,由車輛識別號標識)具有4個車輪(實體,由左前方,左後方,右前方,右後方標識)。

我不需要(也想知道)當我開車時車輪是如何工作的。汽車實體將它們作爲聚合根進行封裝。

藍皮書中的另一個例子:採購訂單。

在任何時候,子採購訂單(本地實體)的總數量不能超過訂單限額(本例中爲聚合根)。聚合根應始終檢查約束。

相關問題