Как посмотреть иерархию того, какой блок использует другой? (Delphi)
Это большой проект, и мне нужно увидеть иерархию единиц, на которую ссылается каждый файл в своем предложении USES.
ех.
Project Source (program.dpk)
HelperUnit Forms ThirdPartyUnit
MyUtils MyConsts MyDownload TPShellShock TPWhatever
Как я могу увидеть это своего рода дерево зависимостей? Я помню, что в одной из более новых версий Delphi была такая функция, но я не помню, как она называлась. Возможно, это был плагин.
Любые намеки на то, как это сделать, было бы замечательно. Я начал писать свою собственную программу для этого, но я уже потратил впустую, как 3 часа, и все еще работаю над парсером для файлов pas.
4 ответа
Внутри GExperts также есть встроенный анализатор зависимости. Найдите опцию "Зависимости проекта". Это работает от эксперта из Delphi против загруженного в данный момент проекта.
Я не знаю интегрированного инструмента IDE, чтобы делать то, что вы хотите, но вы должны взглянуть на Unit Dependency Analyzer, от ModelMaker. Инструмент бесплатный.
Icarus - это еще один инструмент для анализа ваших зависимостей "использует"; он имеет отличную функцию, которая перечисляет единицы, которые не должны быть в ваших предложениях использования.
Это бесплатно.
У вас есть такие графики, созданные в автоматическом режиме с помощью нашего инструмента документации с открытым исходным кодом, который называется SynProject.
Он использует внутреннюю развилку PasDoc для анализа интерфейсной части ваших проектных модулей, а затем извлекает комментарии, чтобы получить подробную информацию о каждом классе / методе / функции / модуле. Из этих данных созданы как диаграммы зависимостей модулей, так и диаграммы иерархии классов.
Затем эта информация объединяется в единый процесс технической документации, начиная с Требования, затем Архитектура, затем Проект, затем План проверки, затем Тестирование, затем Выпуск.