Что произошло
Легендарный программист Роберт Мартин, автор принципов "Чистой архитектуры", опубликовал новый инструмент — UML-viewer. Это не просто генератор диаграмм, а интерактивная среда для анализа и изменения архитектуры кода.
Главная фишка — возможность "играть" с архитектурой: предлагать изменения и сразу видеть, как они повлияют на систему. При этом инструмент интегрирован с AI-ассистентом, который может автоматически вносить правки в код по вашим указаниям.
Детали
UML-viewer работает по принципу:
- Анализирует исходный код проекта (пока поддерживается Clojure)
- Строит UML-диаграмму, где компоненты — это пространства имен
- Позволяет исследовать структуру через интерактивный интерфейс:
- Двойной клик раскрывает компонент
- Правый клик — обновление метрик или исключение элемента
- Можно предлагать изменения архитектуры через специальные "proposals"
Инструмент использует несколько интересных метрик:
- CRAP (Change Risk Anti-Patterns) — оценивает риск изменений в коде
- Мутационное тестирование — проверяет качество тестов
- Цветовая маркировка нарушений Dependency Rule из Чистой архитектуры
"Вы можете просматривать структуру кода, видеть покрытие тестами, играть в "что если" и управлять системой на высоком уровне"
Почему это важно
Для практиков, работающих с ИИ и анализом кода, этот инструмент предлагает:
- Наглядность — сложные архитектурные решения становятся видимыми
- Экспериментальный подход — можно тестировать идеи без немедленного изменения кода
- AI-ассистент — первый шаг к автоматическому рефакторингу по архитектурным соображениям
- Метрики качества — встроенные инструменты оценки CRAP и мутационного тестирования
Инструмент особенно полезен архитекторам и тимлидам, которые хотят наглядно объяснять архитектурные решения и контролировать качество кода.
Что дальше
UML-viewer пока работает только с Clojure, но сама концепция интерактивного анализа архитектуры перспективна. Можно ожидать:
- Расширение поддержки языков
- Более глубокую интеграцию с AI для автоматического рефакторинга
- Развитие инструментов "архитектурного симулятора" — среды для проверки идей перед реализацией
Проект открывает интересные возможности на стыке визуализации кода, анализа архитектуры и AI-ассистентов.
Источники
- Оригинал: github.com — © github.com
