2016-05-12 3 views
2

У меня есть два класса: User и Event. Пользователь может:Могу ли я создать несколько ассоциаций между двумя классами в диаграмме классов?

  • Создать мероприятие.
  • Комментарий к событию.

enter image description here

Я хочу знать, могу ли я создать более одного связь между событием и пользователем? Спасибо за любые ссылки.

ответ

1

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

Однако в вашем примере у вас есть один класс ассоциации и нормальная связь. То, что может идти без ассоциации заканчивается.

+0

Имена конечных членов ассоциации действительно важны. Без них нет свойств для перемещения по ассоциации. UML не генерирует имена по умолчанию для них (хотя там * есть * ненормативное предложение об этом для самой спецификации). –

+1

@ JimL. Спасибо за исправление. И да, имена не должны быть опущены, так как они добавляют много семантики к модели. –

0

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

Кроме того, вы должны рассмотреть возможность сделать Comment нормальный класс в своем собственном праве, так что вы можете добавить семантику сделанные одной User и составил около один Event. Как вы его моделировали, вы запрещаете несколько Comments от одного User на одном Event. Зачем вам это нужно?

+0

На самом деле класс ассоциации 'Comment' - это просто класс, который находится между двумя связанными классами, позволяющими допускать многие отношения. –

+0

Это не эквивалентно. Множественность от других классов может иметь более специфичность. –

+0

Uhm. Я думаю, что 1 на стороне пользователя делает этот класс ассоциации бессмысленным. Но обычно AC - это класс, находящийся между 2 (или более) другими классами, устанавливающий отношение n-m. –