Я вижу, что эти термины используются, и я думаю, что мое собственное использование их может быть неправильным. Мне интересно, как они отличаются.В чем различия между обьектами объектов, агрегатами объектов, ассоциациями объектов и компоновкой объектов?
Обьект объекта - ???
Агрегирование объектов - ???
Ассоциация объектов - ???
Объект Композиция - ???
Кажется, что эти термины появляются в последнее время, когда речь идет об ORM, Data-mappers и Repositories. Например, Фаулер упоминает object collections here. Что конкретно обозначают эти термины, и как следует эффективно использовать их в разговоре?
А, «композиция объекта» была недостающим куском! Теперь все имеет смысл, спасибо. Я также нашел эти 2 хороших примера: ** Пример 1: ** * Компания является совокупностью людей. Компания является составом Счетов. Когда Компания перестает вести дела, ее счета перестают существовать, но ее Люди продолжают существовать. * ** Пример 2: ** * Текстовый редактор владеет буфером (композицией). Текстовый редактор использует файл (агрегация). Когда текстовый редактор закрыт, буфер уничтожается, но сам файл не уничтожается. * – prograhammer
Примеры в комментарии выше из [здесь] (http://programmers.stackexchange.com/questions/61376/aggregation-vs-composition) – prograhammer
Кроме того, стоит отметить, что ** Люди ** могут быть перемещены только для использования внутри ** Company ** (теперь состав), если вы не заботитесь о них, когда-либо существовавших отдельно. (Это означает, что ваше приложение допускает создание людей из контекста компании. Я не думаю, что PHP позволяет фактически определять классы внутри классов.) – prograhammer