我知道爲什麼你會在另一個內部組成某個對象的原因很多。一些思想流派已經明確了以某種方式構建程序的原因,例如, '數據驅動設計'或'域驅動設計'。我仍然是面向對象的初學者,而且我很難理解爲什麼一個對象應該被另一個對象包含。有時候,我發現自己的對象看起來很棒,然後我意識到,「好吧,現在我必須把放在這個地方嗎?」這背後的推理類似於我決定將文件放在我的硬盤上的原因嗎?組成特定對象的動機因素?
我有一對夫婦的指導原則是:
- 如果模型在物理世界的關係。
- 如果作曲家有數據需要構造對象。
- 如果組成對象將會聽作曲家。
當你作出這個決定時,你看什麼?
這是* object * containment(即集合?)還是* class definition * containment(即定義另一個類中的類)?您在問題中間切換條款。 – 2009-08-30 02:42:29