Инструмент для визуализации кода течет в Java? [закрытый]

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

32
задан Community 23 May 2017 в 12:32
поделиться

7 ответов

представление JBuilder UML идет частью пути

1
ответ дан 27 November 2019 в 21:13
поделиться

Если найдено, что doxygen работает на Java также.

3
ответ дан 27 November 2019 в 21:13
поделиться

IBM имеет старое (2004) инструмент структурного анализа , который делает некоторую визуализацию кода Java.

Netbeans UML делает достойное задание, перепроектирующее код также.

1
ответ дан 27 November 2019 в 21:13
поделиться

Maybe Ctrl + Alt + H in Eclipse / IntelliJ IDEA ? (albo present in NB somewhere) Or "data flow from/to" in IntelliJ IDEA?

10
ответ дан 27 November 2019 в 21:13
поделиться

В UML 2 есть две основные категории диаграмм: структурные диаграммы и диаграммы поведения. Каждая диаграмма UML принадлежит к одной из этих двух категорий диаграмм. Назначение структурных диаграмм - показать статическую структуру моделируемой системы. Они включают диаграммы классов, компонентов и / или объектов. Диаграммы поведения, с другой стороны, показывают динамическое поведение между объектами в системе, включая такие вещи, как их методы, взаимодействие и действия. Примеры диаграмм поведения - это диаграммы действий, вариантов использования и последовательности.

Здесь я понимаю, что OP запрашивает инструмент для визуализации потока кода (это заголовок вопроса), т.е. динамическое поведение. Идеальной диаграммой для этого была бы диаграмма последовательности.

Но, AFAIK, ни инструменты обратного проектирования UML, ни Doxygen не могут вычислить такие диаграммы из источников. Эти инструменты умеют создавать диаграммы структуры (например, диаграмму классов), но не диаграммы поведения (для этого потребуется выполнение). Таким образом, эти инструменты не отвечают на вопрос (даже для C ++).

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

0
ответ дан 27 November 2019 в 21:13
поделиться

Мое избранное одним был креол . К сожалению, последнее обновление было сделано 10 августа 2007 г. ... но все же попробовать стоит.

Другой вариант,

0
ответ дан 27 November 2019 в 21:13
поделиться

Я тестировал это, и это ДОСТАТОЧНО для автоматической генерации диаграмм последовательности

https://github.com/bedrin/jsonde

1
ответ дан 27 November 2019 в 21:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: