Нужен ли классу Derived алмазная ссылка? - PullRequest
0 голосов
/ 16 июля 2010

Если, например, у меня есть следующие требования: 1. Собака - это животное 2. В зоопарке есть животное (-и)*

Ответы [ 4 ]

0 голосов
/ 14 июня 2013
  1. Не используйте разъем с белым бриллиантом. Используйте «состав» или «ассоциация». В вашем случае используйте «ассоциацию». Автор "UML дистиллят" имеет следующие комментарии .

  2. Второе объединение не требуется. Однако вы можете изменить свою модель следующим образом:

    (1) Установите целевую роль первого агрегата (со стороны животных) «животные».

    (2) Удалить второе объединение.

    (3) Создайте еще один класс DogZoo, обобщите из Zoo.

    (4) Нарисуйте агрегацию из DogZoo в Dog с целевой ролью "dogs {redefines animals}" *

Надеюсь, это поможет.

0 голосов
/ 16 июля 2010

Второй бриллиантовый соединитель предполагает, что в дополнение к животным в зоопарке есть и собаки.

0 голосов
/ 18 июля 2010

Привет, прежде чем заняться UML, используйте здравый смысл:)

Хотите ли вы смоделировать в этом зоопарке животных разных видов? Тогда вы должны не только поместить собак, но также кошек и всех других животных класса, которые могут существовать в ЭТОМ типе (классе) зоопарка, и просто использовать один алмазный соединитель.

0 голосов
/ 16 июля 2010

2-й алмазный разъем избыточен. Вот несколько советов относительно стиля диаграмм классов UML: http://www.agilemodeling.com/style/classDiagram.htm

...