天天看點

業務邏輯展現在各種資料、行為的關系上,是以,聚合設計也重在關系處理,對關系的敏感性成了設計聚合的要點。關系有高度緊密,也

作者:從頭開始自學java

業務邏輯展現在各種資料、行為的關系上,是以,聚合設計也重在關系處理,對關系的敏感性成了設計聚合的要點。關系有高度緊密,也有松松垮垮,而高聚合低關聯是處理這些關系的主要依據。

聚合本身就是一種高聚合,聚合内部的對象都是在資料和行為上高度關聯和一緻的,除此以外的其他關系就被抛棄了。如果關系不是很緊密,那麼就隔斷,如果非常緊密就放在一起。

Java等面向對象語言中,關聯可實作為引用,當在Product類中将Category作為其字段屬性引用時,就表示Product和Category是一種關聯關系

而關系資料表或ER模型使用外鍵來表示這種關系。無論UML、Java還是關系資料庫,它們都用不同的方式表達了“關系”這個概念。

除了上面的關系,還有更緊密的關聯,它就是聚合(Aggregation)。聚合是一種更強的緊密關聯,代表一個類是另一個類的一部分。它有兩個特性。

1)傳遞性:如果A是B的一部分,B是C的部分,那麼A就是C的一部分。

2)反對稱性:如果A是B的一部分,那麼B不會是A的一部分。

除了聚合還有組合(Composition)。組合是一種較強的聚合關系,這兩種關系基本相同,不同之處在于,在組合關系中,部件對象任何時候隻能從屬于一個整體對象,兩者的生命周期是一樣的。

業務邏輯展現在各種資料、行為的關系上,是以,聚合設計也重在關系處理,對關系的敏感性成了設計聚合的要點。關系有高度緊密,也
業務邏輯展現在各種資料、行為的關系上,是以,聚合設計也重在關系處理,對關系的敏感性成了設計聚合的要點。關系有高度緊密,也
業務邏輯展現在各種資料、行為的關系上,是以,聚合設計也重在關系處理,對關系的敏感性成了設計聚合的要點。關系有高度緊密,也

繼續閱讀