Автоматическое создание полной диаграммы классов из проекта Java - PullRequest
0 голосов
/ 27 сентября 2019

Есть ли решение для автоматического создания полной диаграммы классов из проекта Java?

Я потратил много времени на поиск в Интернете, пробуя Papyrus, Jar2UML, UML2Tools, DiaGen, jGraps, Class-visualizer,но не нашли ни одного работающего в данный момент решения.Хотя большинство из упомянутых инструментов работают (некоторые в настоящее время не работают), они не генерируют автоматически диаграмму полной иерархии классов.Я понимаю, что это может быть Святой Грааль, и может потребоваться параметризация, но думал, что это должно быть возможно в этот день.

Требования для более широкого использования будут:

  • В настоящее время работает
  • Простой в использовании или современный учебник о том, как именно это сделать
  • Не требует ручного кодирования
  • Автономный или Eclipse / NetBeans / IntelliJ плагин
  • Свободно

Если ничего подобного нет, я подумываю создать что-то подобное.

1 Ответ

1 голос
/ 29 сентября 2019

На самом деле я не уверен, что все классы проекта в одна диаграмма классов - это хорошая идея, потому что результат нечитаем с большим количеством классов, выможет сделать это, например, с помощью моего инструмента BoUML .После загрузки / установки / запуска:

  • создайте новый проект
  • выберите Java в глобальном меню Языки
  • для первогоПоявится диалоговое окно каталога, нажмите кнопку отменить (у вас нет каталога java ), затем для второго диалога каталога выберите корневой каталог, содержащий все источники Java, которые вы хотите смоделировать, затемдождитесь окончания
  • в браузере слева в любом из созданных представлений классов или в новом, который вы создаете сами, сделайте правый щелчок мыши и выберите Новая диаграмма классов и дважды щелкните по нему, чтобы открыть его
  • , вероятно, вам необходимо скрыть детали классов на диаграмме, чтобы ограничить их размер (вы можете сделать это позже, но лучше сделать это прямо сейчас, если у вас многоклассы), в этом случае щелкните правой кнопкой мыши на диаграмме или в браузере, чтобы изменить параметры чертежа и установить да параметры скрыть атрибуты классов и скрыть операции с классами затем подтвердить (кнопка ok )
  • использовать кнопку бинокль сверху (рядом с кнопкой печати), изменить вид to class затем используйте кнопки search затем отметьте их затем закройте
  • в открытой диаграмме (показано направая часть окна) щелкните правой кнопкой мыши и выберите добавить отмеченные элементы , поместив классы в случайное положение, затем повторите правый щелчок мыши и выберите автоматический макет (вы также можете перемещать классыСамо собой разумеется)

Как видите, все отношения между классами нарисованы, а не только обобщение / реализация.Если вы хотите, чтобы они были только без необходимости, например, скрывать все остальные отношения одно за другим, вы можете разработать плагин, отмечающий все классы и обобщение / реализацию модели, а затем измените процедуру, которую я дал:

  • при редактировании настроек рисования также перейдите на вторую вкладку и установите no настройку отрисовать все отношения
  • чем использовать поиск в браузере (кнопка бинокля), чтобы выбрать все классы, используйте ваш плагин

В любом случае, снова показывать все классы в одной диаграмме - это плохоИдея, за исключением случаев, когда у вас их мало.

На странице документация у вас есть справочное руководство и (старые) видеоуроки, в том числе два, посвященные Java, и другой, посвященный написанию плагина.-out


Обратите внимание, что вы также можете использовать Doxygen для создания диаграммы без использования UML modeler

...