jGRASP
![]() | |
![]() jGRASP работает на Windows XP | |
Разработчик(и) | Команда jGRASP |
---|---|
Стабильная версия | 2.0.6_12 / 21 декабря 2022 г. |
Платформа | Ява SE |
Тип | Java IDE |
Лицензия | Лицензия , бесплатное ПО |
Веб-сайт | http://www.jgrasp.org/ |
jGRASP — среда разработки , включающая автоматическое создание программных визуализаций . Он создает статические визуализации структуры исходного кода и визуализации структур данных во время выполнения. [1]
Визуализации структуры данных времени выполнения также доступны в виде плагинов для IntelliJ IDEA, Android Studio и Eclipse.
jGRASP реализован на Java и работает на всех платформах с виртуальной машиной Java (версия Java 1.8 или выше). GRASP (Linux, UNIX) и pcGRASP (Windows) написаны на C/C++, тогда как jGRASP написан на Java («j» в jGRASP означает, что он работает на JVM). Веб-сайт jGRASP предлагает загрузки для Windows , Mac OS , а также в виде общего ZIP- файла, подходящего для Linux и других систем.
Для языков, отличных от Java и Kotlin, jGRASP — это редактор исходного кода и базовая интегрированная среда разработки. Его можно настроить для работы с большинством бесплатных и коммерческих компиляторов любого языка программирования.
Визуализации [ править ]
Схема структуры управления [2] [3] (CSD) — это диаграмма потока управления, которая помещается в пространство, обычно занимаемое отступами в исходном коде. Его цель — улучшить читаемость исходного кода. jGRASP создает CSD для Java, C , C++ , Objective-C , Ada и VHDL . Окно редактирования обеспечивает свертывание на основе CSD и функцию «контекстной подсказки», которая отображает первую строку структуры кода, находящуюся за пределами экрана, когда указатель мыши наведен на ее структуру CSD.
Средства просмотра объектов Java/Kotlin [4] [5] в jGRASP обеспечивают интерфейсные, структурные и другие представления структур данных и других объектов и примитивов во время отладки и операций в рабочей среде. Например, представление на основе содержимого отображает ArrayList и LinkedList одинаково, как список элементов. Структурные представления показывают внутреннюю структуру деревьев , связанных списков , хеш-таблиц и т. д. Структурные представления связанных структур данных отображают узлы локальных переменных и их связь с основной структурой. Результат анимируется при возникновении изменений, например, при добавлении узла в связанный список. Общие структуры данных автоматически идентифицируются и структурно отображаются. Другие программы просмотра показывают, например, образец цвета для цвета, изображение для значка и двоичные детали двойника. Несколько средств просмотра можно объединить в одном окне холста средства просмотра, а содержимое можно сохранить в файл.
График профиля сложности [6] (CPG) — это диаграмма сложности на уровне операторов. Его цель — помочь идентифицировать слишком сложные области исходного кода. jGRASP генерирует CPG как для Java, так и для Ada. Метрика включает в себя общие показатели, такие как доступность и сложность контента, которые можно отображать индивидуально.
jGRASP также генерирует диаграммы UML для Java с интерактивной информацией о зависимостях.
История [ править ]
jGRASP был создан Джеймсом Кроссом и Ларри Баровски на факультете компьютерных наук и разработки программного обеспечения Инженерного колледжа Сэмюэля Гинна Обернского университета . Он поддерживается и оценивается командой jGRASP . Разработка jGRASP поддержана исследовательским грантом Национального научного фонда .
Разработка предыдущих версий GRASP поддерживалась исследовательскими грантами НАСА Центра космических полетов имени Маршалла , Агентства перспективных исследовательских проектов Министерства обороны США ( DARPA ) и Агентства оборонных информационных систем ( DISA ).
См. также [ править ]
Ссылки [ править ]
- ^ «Главная страница jGRASP» . www.jgrasp.org . Проверено 01 июня 2020 г.
- ^ « Визуальная поддержка поэтапной абстракции и уточнения в Ada 95 »
- ^ " GRASP/Ada 95: Визуализация с помощью диаграмм структуры управления "
- ^ « Программы просмотра динамических объектов для структур данных »
- ^ « Расширяемая платформа для визуализации динамической структуры данных в облегченной IDE »
- ^ « Визуализация и измерение исходного кода »