Основные зависимости в UML

Здесь я укажу основные зависимости (стрелки), которые у казываются при построении UML диаграмм

Стрелка ассоциации

Стрелка ассоциации, она же bidirectional, практически не должна использоваться, потому что она свидетельствует о плохой архитектуре кода. Рисуется в виде прямой линии между классами.

Стрелка "Однонаправленная зависимость unidirectional"

Данная стрелка обозначает, что класс А зависит от класса B, то есть класс А вызывает методы класса B.

Стрелка "Агрегация"

Стрелка Агрегация означает зависимость HAS-A, т.е. класс A имеет, к примеру ListArray класса B.

Пример: Профессор (класс A) имеет список студентов (класс B)

Стрелка "Композиция"

Стрелка "Композиция" по своей сути то же самое, что и "Агрегация", только отличие в том, что класс A не может существовать без класса B (класс A должен иметь хотя бы один экземпляр класса B). Пример : машина не может быть без руля.

Стрелка наследования (генерализация)

Указывается на главный класс всегда. Мы привыкли думать, что иерархия идет от родителей к детям, но здесь указывается обратное направление при рисовании отношения классов.

Пример: B extends A.

Стрелка реализации (интерфейс)

Стрелка реализации обозначает реализацию интерфейса. Стрелка в направлении от класса к интерфейсу.

Стрелка dependency (зависимость)

Немного отличается от стрелки интерфейса (На конце стрелка незаполненная, а острая)

Таких стрелок может быть очень много в uml-диаграмме (половина от всех возможных). Обозначает, что класс C каким-то образом зависит от класса D.

Last updated