PlantUML — не просто диаграммы 🧠⌨️
Привет, друг! Ты когда-нибудь ловил себя на мысли: «Блин, как бы объяснить коллеге эту архитектуру, не рисуя в Paint’е кривые стрелочки до 3 ночи?» Если да — у меня для тебя не просто решение, а целая философия: PlantUML.
Представь: ты пишешь текст — и получается диаграмма
PlantUML — это как Markdown, только для схем. Вместо того, чтобы тыкать мышкой в квадратики, в каком-нибудь редакторе, ты описываешь логику скриптом, а PlantUML сам превращает это в чёткую, красивую, профессиональную диаграмму.
Хочешь показать, как пользователь логинится в систему? Пишешь:
@startuml actor User participant "Frontend\n(Web / Mobile)" as FE participant "Auth Service" as Auth participant "Database" as DB
User -> FE : Вводит логин и пароль\nи нажимает «Войти» FE -> Auth : POST /login\n{email, password} Auth -> Auth : Проверяет формат данных Auth -> DB : Запрос: найти пользователя\nпо email DB --> Auth : Возвращает хэш пароля\nи данные пользователя Auth -> Auth : Сравнивает хэш\nвведённого пароля alt Пароль верный Auth -> Auth : Генерирует JWT-токен Auth --> FE : 200 OK\n{token, user} FE -> User : Переход в личный кабинет else Неверный пароль или email Auth --> FE : 401 Unauthorized\n{error: "Invalid credentials"} FE -> User : Показывает ошибку end @enduml
(Полученную диаграмму смотри во вложении)
И бац — готова диаграмма вариантов использования. Без перетаскиваний, без кривых линий, без паники перед демо.
Это не только UML (да, серьёзно!)
Несмотря на название, PlantUML — гораздо больше, чем просто UML-инструмент. Тут тебе и:
- Диаграммы последовательности (чтобы отследить, кто кому и что шлёт в микросервисах),
- Диаграммы классов (для архитекторов и Java-ниндзя),
- Диаграммы развёртывания (как твои контейнеры дружат с серверами),
- Диаграммы Ганта (да, даже планирование задач!),
- И даже JSON- и YAML-визуализация.
Всё это — из простого скрипта. И да, это open source, так что инструмент живёт, дышит и развивается благодаря сообществу, которое реально заботится о качестве.
А теперь — самое вкусное: это твой код
Ты можешь хранить .puml-файлы прямо в Git.
Делать git diff и видеть, как менялась архитектура за последние два месяца.
Пул-реквестить диаграмму, как обычный код.
Интегрировать в CI/CD — и на лету генерировать документацию.
Это не «картинка для презентации». Это живая, версионируемая часть твоего проекта.
Работает где угодно:
- В VS Code — есть плагин с превью в реальном времени.
- В IntelliJ — подключил и рисуешь схемы, не выходя из IDE.
- В Obsidian, Notion (через сторонние рендеры), Confluence, даже в терминале (да, есть ASCII-режим!).
PlantUML — это не инструмент. Это образ мышления. Ты перестаёшь думать в «окошках и стрелочках» и начинаешь думать в структурах, связях и потоках.
Так что в следующий раз, когда тебе нужно объяснить сложную идею — не рисуй. Опиши. Пусть машина займётся визуалом. А ты — останься в потоке мысли.
P.S.: Как пелось в группе «Технология» из 90-х «Нажми на кнопку - получишь результат»:
· 28.10.2025
Классная тема, можно сразу в ридми схемки рисовать и не париться с картинками🔥
ответить
коммент удалён