fugro
@fugro
Начинающий кодер

Может ли один объект принадлежать двум композитам?

Составляю диаграмму классов и столкнулся с вопросом: может ли один объект принадлежать нескольким композитам(агрегатам)

Например, есть классы Comment, Article, Movie, Like
5e26ffa16d1ca839628210.png

По смехе видно что Like является частью трех объектов, и по логике Like для каждого объекта свой.

Верна ли диаграмма? Или стоит заменить на обычную ассоциацию?
Как отобразить данную связь на диаграмме?

Подскажите или поделитесь источником где почитать.
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
может ли один объект принадлежать нескольким композитам(агрегатам)
Формально UML это не запрещает, так что можно.
По смехе видно что Like является частью трех объектов
- Отношение часть-целое это агрегация. У вас изображена композиция: экземпляр класса like может существовать ТОЛЬКО внутри экземпляров этих трех классов. Уничтожается comment - уничтожается и like
Или стоит заменить на обычную ассоциацию?
Ну тут важно понимать бизнес-контекст предметной области и варианты использования лайков и что вы хотите получить от такой диаграммы.

Мартин Фаулер.UML. Основы, 3е издание
Язык UML. Руководство пользователя.Гради Буч, Джеймс Рамбо
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы