Я собираюсь начать работу над проектом, который включает в себя рефакторинг и изменение существующего кода, который находится в c & c++. Код раздутый и в огромном объеме. Конечно, так как код должен быть изменен, понимание кода должно быть разработано и в очень короткий промежуток времени, так как у нас есть довольно сжатые сроки графика проекта. Может ли кто-нибудь предложить какие-либо инструменты с открытым исходным кодом, которые помогут в достижении вышеизложенного. Короче говоря, я ищу инструмент, который может:
- Обратные инженерные инструменты, которые помогут понять дизайн.
- Инструменты генератора последовательностей, которые помогут рисовать последовательности во время выполнения (скорее всего, мы сможем запустить код, но не на начальных этапах, по крайней мере) или посредством проверки кода.
- Хорошие инструменты просмотра кода для изучения существующей базы кода.
- Подходит инструмент, который может автоматически рефакторинг кода с минимальными усилиями.
Пожалуйста, расскажите мне о любых впечатлениях, предпочтениях или предпочтениях, на которые стоит обратить внимание.
[РЕДАКТИРОВАТЬ] Придумал список инструментов, чтобы помочь в выше. Вот список:
-
Графвиз и доксиген
Генерация диаграмм классов UML из существующей кодовой базы -
UMLStudio
Создание объектной модели для вашего унаследованного кода является лучшим подходом к ее анализу, пониманию и поддержанию. UMLStudio может автоматически конвертировать c++, Java, CORBA IDL, PHP 5 и код Ada 95 в нотацию OOA & D быстрее, чем любой другой инструмент CASE. -
CodeDrawer для c++
CodeDrawer преобразует исходный код в визуальные диаграммы. Класс, структура и любые элементы исходного кода могут быть показаны диаграммами. Он также показывает логику функции и метода. CodeDrawer помогает понять исходный код вашего проекта -
Imagix
Обратное проектирование и визуализация исходного кода приводят к улучшению понимания программы. Скорости: изучение незнакомого изменения кода Анализ влияния интеграции с открытым исходным кодом повторного использования программного обеспечения обслуживания -
AgileJ AgileJ StructureViews - это подключаемый модуль для Eclipse Java IDE, который генерирует настраиваемые диаграммы классов UML в промышленном масштабе и идеально подходит для гибкой разработки или исследования любой существующей кодовой базы Java.
-
MaintainJ Если вы можете запустить кодовую базу, то MaintainJ генерирует последовательности UML и диаграммы классов во время выполнения, когда вы запускаете конкретный вариант использования.
-
Java Reverse Engineering Tool Генерирует диаграммы классов и отношения между классами из исходного кода Java.
-
Source Insight Отличное программное обеспечение для просмотра исходного кода
Еще одно, благодаря Стиву Таунсенду
Klocwork