Генерация диаграммы классов из XMI
У меня есть проект PHP с множеством классов с множеством связей во множестве папок послеСоглашение Zend Naming.
Я использую среду IDE NetBeans 7.1. Я работаю под Windows 7.
ЦельМне нужно увидеть графическое представление отношений классов, возможно, с различной глубиной и различной степенью сложности. Также было бы хорошо, если бы классы на диаграмме были кликабельными. Мне не обязательно создавать документацию.
попытки1. Внутри NetBeansNetBeans это отличная IDE с множеством функций. На самом деле, он распознает зависимости класса, и было бы разумно предположить, что у него есть какой-то способ графического просмотра этих отношений, изначально или через плагин. Такойплагин существует, но для версии 5.5. У меня 7.1, и этоне совместимы Потерпеть поражение.
2. Предприятие АрхитекторПростой поиск в Google вызываетEnterprise Architect как универсальный, полностью всеобъемлющий инструмент для решения таких проблем. Итак, я скачиваю и устанавливаю. Я'Я не собираюсь вдаваться в детали того, как я не могне понимаю, как что-либо делать, и как учебники хвастаются тем, что может делать программное обеспечение, но редко говоряткак.
Итак, я импортировал источник. Он породил много разных классов и проанализировал всех участников. Кроме того, он генерировал диаграммы классов. "Отлично!"Хм, но увы. Диаграммы классов показывают только отношения между классами, файлы которых находились в одной и той же исходной папке, несмотря на то, что отношения визуально зарегистрированы в классах. свойства. Поиск документации о том, как я мог объединить все эти диаграммы в одну, был неудачным. Потерпеть поражение.
НОТА: Я создал параллельный поток до этогоВот.
3. PHP_UMLНайденныйэтот инструмент PEAR, Выглядело хорошо. Итак, я прочитал документацию о том, как установить ее для моей установки из различных источников, и запустил ее. Во-первых, я использовалHTML Выходной формат. Большой! Много документации с указателем, бла бла бла. Однако лучшее, что он мог сделать в нужном мне направлении, было так: Излишне говорить, я думаю, что это очень плохая, супер упрощенная версия того, что мне действительно нужно. Вывод: провал.
4. Enterprise Architect + PHP_UMLТем не менее, PHP_UML также может генерировать XMI. Вот это да. Очень хорошо. Я могу хранить свои отношения и просматривать их по-разному и обмениваться с другими людьми.
Итак, я импортировал его в Enterprise Architect. Результат: так же, как и раньше, только с Enterprise Architect, только без диаграмм классов. Просто классы. Насколько я'прочитав об этом, теперь я могу вручную создавать отношения. Эпический провал.
5. ArgoUML + PHP_UMLГде-то в поисках решения я наткнулся на кого-токомментарий, который сказал, что они используютArgoUML, Скачал и установил. XMI импортирован с некоторыми трудностями (пришлось явно изменить версию на 1). Ошибка (см. Попытку 3).
ЗаключениеТакая, казалось бы, тривиальная задача, и все же такая сложная. Должен ли я пройтивесь этот списокопробовать каждое приложение?