Интерфейсы в диаграмме компонентов UML

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


person وليد تاج الدين    schedule 10.06.2015    source источник


Ответы (1)


На самом деле нет никакой реальной разницы между ними. Вы можете реализовать интерфейс как с классом, так и с компонентом. Также вы можете показать реализацию в обоих случаях с нотацией сокет/леденец.

Компоненты мало чем отличаются от классов. Вы можете думать о компоненте как о контейнере, в котором размещается несколько различных классов. И если один из этих классов реализует интерфейс, вы можете раскрыть его через компонент (если хотите). Кроме того, компонент может иметь множество внутренних интерфейсов для своих размещенных классов.

person qwerty_so    schedule 10.06.2015
comment
Поскольку интерфейс одинаков для диаграммы классов и компонентов, должен ли я определить интерфейс — указать содержащиеся в нем API — только на одной из двух диаграмм или на обеих из них. - person وليد تاج الدين; 11.06.2015
comment
Зависит от аудитории. Если полезно видеть это в обоих, покажите это в обоих. Если диаграммы представлены вместе, вы можете использовать представление на одной диаграмме. - person qwerty_so; 11.06.2015