Ответ 1
AnalysisTool: я знаю, что это оболочка clang, но она также предоставляет диаграммы зависимостей.
AnalysisTool изначально был создан для двух основных целей: предоставить простой в использовании исполняемый двоичный файл статического анализатора Clang и настроить Clang, предоставив некоторые дополнительные проверки. Когда статический анализатор Clang находился на ранних стадиях, разработчики могли только попробовать его, чтобы проверить последний исходный код LLVM и Clang, скомпилировать его и использовать анализатор из командной строки. AnalysisTool предоставил простой в использовании графический интерфейс и избавил от необходимости касаться исходного кода Clang. Он также обеспечивал автоматическое обновление, чтобы пользователи AT всегда могли использовать новейший статический анализатор Clang.
Этот инструмент будет вычислять сложность кода C/C++/Objective C в циколоматической среде, не заботясь о заголовочных файлах и препроцессорах. Таким образом, инструмент фактически вычисляет, насколько сложный код "выглядит", а не насколько "сложный" код.
Людям понадобится этот инструмент, потому что зачастую очень трудно получить все включать папки и файлы прямо с помощью аналогичного инструмента, но мы не делаем действительно нужна такая точность, когда дело доходит до цикломатической сложности.
Это единственные два инструмента, которые я знаю, надеюсь, это поможет.