Ответ
UML (Unified Modeling Language, унифицированный язык моделирования) — это стандартный графический язык для визуализации, спецификации, проектирования и документирования артефактов программных систем. Он используется для понимания и коммуникации архитектуры и поведения системы.
Ключевые категории диаграмм UML:
| Категория | Назначение | Примеры диаграмм |
|---|---|---|
| Структурные | Показывают статическую структуру системы. | Диаграмма классов, компонентов, развёртывания. |
| Поведенческие | Показывают динамическое поведение системы во времени. | Диаграмма последовательностей, состояний, активностей. |
| Поведенческие (пользовательские) | Описывают функциональность с точки зрения внешних акторов. | Диаграмма вариантов использования. |
Пример диаграммы классов (синтаксис в текстовом виде):
class BankAccount {
-accountNumber: String
-balance: Double
-owner: Customer
+deposit(amount: Double): Boolean
+withdraw(amount: Double): Boolean
+getBalance(): Double
}
class Customer {
-id: String
-name: String
+accounts: List<BankAccount>
}
Customer "1" -- "*" BankAccount : owns >
Практическое применение UML:
- Документирование архитектуры и дизайна.
- Коммуникация между разработчиками, архитекторами и заказчиками.
- Анализ сложных систем и их взаимодействий перед реализацией.
- Генерация каркаса кода (forward engineering) или реверс-инжиниринг существующего кода.
Инструменты: Enterprise Architect, Lucidchart, draw.io, PlantUML, а также встроенные средства в IDE (например, IntelliJ IDEA).