UML (Unified Modeling Language) – это унифицированный графический язык моделирования для описания, визуализации, проектирования и документирования объектно-ориентированных систем. Под основными элементами UML понимают сущности, отношения и диаграммы.
Сущности являются ключевыми абстракциями языка, отношения связывают сущности вместе, диаграммы — графические представления множества элементов, изображаемые в виде связного графа с вершинами (сущностями) и ребрами (отношениями) — группируют коллекции сущностей (классов, объектов, прецедентов, состояний, действий и т.д.), которые представляют интерес для конкретного случая.
Наибольший интерес в контексте создания простой диаграммы классов представляют классы и интерфейсы, которые изображаются в виде прямоугольника, включающего имя класса, имена атрибутов и операций.
*Тыкни чтобы посмотреть картинку*
Символ перед атрибутом/методом - это указание области видимости. "+" - Public (атрибут/метод виден всем другим классам), "-" - Private (атрибут/метод не виден никаким другим классам), "#" - Protected (атрибут/метод доступен только самому классу и его потомкам).
Небольшое отступление, чтобы разобраться с терминами:
Главное отличие класса от интерфейса — в том, что класс состоит из интерфейса и реализации.
Любой класс всегда неявно объявляет свой интерфейс — то, что доступно при использовании класса извне. Если у нас есть класс Ключ и у него публичный метод Открыть, который вызывает приватные методы Вставить, Повернуть и Вынуть, то интерфейс класса Ключ состоит из метода Открыть. Когда мы унаследуем какой-то класс от класса Ключ, он унаследует этот интерфейс.
Кроме этого интерфейса, у класса есть также реализация — методы Вставить, Повернуть, Вынуть и их вызов в методе Открыть. Наследники Ключа наследуют вместе с интерфейсом и реализацию.
Продолжим:
Типы базовых отношений между классами на UML диаграммах:
*Тыкни чтобы посмотреть картинку*
Пример UML диаграммы классов, описывающей некую сделку:
*Тыкни чтобы посмотреть картинку*
Сущности являются ключевыми абстракциями языка, отношения связывают сущности вместе, диаграммы — графические представления множества элементов, изображаемые в виде связного графа с вершинами (сущностями) и ребрами (отношениями) — группируют коллекции сущностей (классов, объектов, прецедентов, состояний, действий и т.д.), которые представляют интерес для конкретного случая.
Наибольший интерес в контексте создания простой диаграммы классов представляют классы и интерфейсы, которые изображаются в виде прямоугольника, включающего имя класса, имена атрибутов и операций.
*Тыкни чтобы посмотреть картинку*
Символ перед атрибутом/методом - это указание области видимости. "+" - Public (атрибут/метод виден всем другим классам), "-" - Private (атрибут/метод не виден никаким другим классам), "#" - Protected (атрибут/метод доступен только самому классу и его потомкам).
Небольшое отступление, чтобы разобраться с терминами:
Главное отличие класса от интерфейса — в том, что класс состоит из интерфейса и реализации.
Любой класс всегда неявно объявляет свой интерфейс — то, что доступно при использовании класса извне. Если у нас есть класс Ключ и у него публичный метод Открыть, который вызывает приватные методы Вставить, Повернуть и Вынуть, то интерфейс класса Ключ состоит из метода Открыть. Когда мы унаследуем какой-то класс от класса Ключ, он унаследует этот интерфейс.
Кроме этого интерфейса, у класса есть также реализация — методы Вставить, Повернуть, Вынуть и их вызов в методе Открыть. Наследники Ключа наследуют вместе с интерфейсом и реализацию.
Продолжим:
Типы базовых отношений между классами на UML диаграммах:
*Тыкни чтобы посмотреть картинку*
Пример UML диаграммы классов, описывающей некую сделку:
*Тыкни чтобы посмотреть картинку*
READ OTHER POSTS