コンポジションと集約の違い
両方ともHas-a関係
コンポジションはhas-aでかつ、個々のロールが独立して利用されない
PartはPartsによってのみ利用される
例: 大学-学部の関係
もしその大学が消えれば、自動的に学部も消える
集約はhas-aでかつ、has-aであるのみ
個々のロールは独立して利用されても良い
例: 大学-教授の関係
もしその大学が消えても、教授は生きている
用語としての差異はあれど、利用者にとってそういう制約があるわけではないのでなんか微妙だなmrsekut.icon
コメントかなにかでそれを表明しないといけないし、それを破っても特に問題が生じない
参考
『オブジェクト指向設計実践ガイド』 p.228
http://snowycode.blogspot.com/2010/05/blog-post_28.html