質問

構成と集約の違いは何ですか? 誰でもこのOOADのサンプルを教えてもらえますか?

役に立ちましたか?

解決

こちら

"集約と合成は、特別な種類の関連付けです。集約は、所有権または全体/一部の関係を表すために使用され、構成は、より強力な所有権の形式を表すために使用されます。合成では、一部と全体の寿命が一致します。複合オブジェクトは、作成および破壊の観点からその部分の処理に対して単独の責任を負います。

さらに、集約端の多重度は1を超えることはできません。つまり、共有されていません。オブジェクトは、一度に1つのコンポジットのみの一部になる場合があります。コンポジットが破棄される場合、すべてのパーツを破棄するか、他のオブジェクトにそれらの責任を与える必要があります。複合オブジェクトは、他のオブジェクトがそのパーツを破壊しないという知識で設計できます。

構成は、値ごとの集計をモデル化するために使用できます。これは、属性と意味的に同等です。実際、以前のUMLドラフトでは、コンポジションはもともと“ normal”で値による集計と呼ばれていました。参照による集計と考えられている集計。定義はわずかに変更されていますが、一般的な考え方は引き続き適用されます。集約と構成の区別は、より設計概念であり、通常は分析中には関係ありません。」  ジョン・ムーア

他のヒント

生徒、生徒の脳、生徒が通っている学校を検討します。

脳は学生の一部です。生徒が破壊されると、脳も破壊されます。これは組成です。

生徒は 学校を持っています。生徒は学校の破壊を生き延び、その逆も同様です。これは集約です。

ここでの質問に対する適切な回答: http://ootips.org/uml-hasa.html

簡単に言うと、構成と集約の両方が非循環的であり、部分全体で構成される関係です。違いは、構成では、全体 part を作成(および削除)することです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top