JGRASP

jGRASP
JGRASP screenshot.png
Тип Java IDE
Разработчик команда jGRASP
Операционная система кроссплатформенное программное обеспечение
Аппаратная платформа Java Virtual Machine
Последняя версия 2.0.6_04 (21 мая 2020)
Читаемые форматы файлов jGRASP Project[d]
Создаваемые форматы файлов jGRASP Project[d]
Лицензия License, freeware
Сайт jgrasp.org

jGRASP — лёгкая интегрированная среда разработки, созданная специально для обеспечения автоматического создания визуализации работы приложения с целью улучшения его понятливости. Она создаёт статическую визуализацию структуры исходного а программы и визуализацию структур данных во время исполнения скомпилированного а.

jGRASP разработана с помощью языка программирования Java и исполняется на всех платформах с помощью виртуальной машины Java версии 1.6 и выше.

GRASP (для Linux и UNIX) и pcGRASP (для Windows) были написаны на языке программирования C/C++, в то время как jGRASP — на Java. Буква "j" (джэй) в jGRASP (джэйГРАСП) показывает, что эта интегрированная среда разработки выполняется в виртуальной машине Java (JVM).

На интернет сайте jGRASP можно скачать приложение для Windows, Mac OS, и универсальный ZIP-файл для Линукс и других ОС.

Для остальных языков программирования jGRASP полезна в качестве редактора исходного а. Она может быть настроена для работы с большинством бесплатных и коммерческих компиляторов любого языка программирования.


Визуализация[ | ]

Диаграмма структуры программы[ | ]

Внешние изображения
Диаграмма структуры программы (CSD)

Диаграмма структуры программы (CSD) — это диаграмма исполнения алгоритма программы, которая размещается на месте отступов создаваемого а. Её цель — улучшить читабельность создаваемого а. jGRASP рисует диаграммы CSD для Ява, C, C++, Objective-C, Python, Ada, VHDL и XML/XHTML. Диаграммы CSD в jGRASP встраиваются в окно редактора исходного а и могут быть отрисованы по запросу. Они создаются почти мгновенно (50,000 строк а в секунду и даже быстрее на современном оборудовании). Окно редактора обеспечивает основанную на диаграммах CSD функцию «контекстной подсказки», которая показывает первую строку структуры а, которая в данный момент находится вне поля видимости, когда указатель мыши помещается над структурой CSD.

Обозреватели[ | ]

Внешние изображения
Обозреватели

Обозреватели объектов в Ява[1][2] в jGRASP обеспечивают основанную на интерфейсе, структурную и другие способы визуализации структур данных и других объектов и примитивов во время процесса отладки а и действий с workbench. Часто эти способы представления (визуализации) более полезны чем традиционный вид в виде дерева, показывающий поля каждого объекта. Например, основанный на содержании способ представления показывает ArrayList и LinkedList одинаковым образом, в виде списка элементов. Структурный способ представления (визуализации) показывает внутреннюю структуру деревьев, связанных списков, хеш-таблиц и т. п. Структурный способ представления связанных структур данных показывает узлы локальных переменных (local variable nodes) и их связь с главной структурой программы. Результат отрисовывается, когда происходит новое изменение, например, когда узел (node) добавляется к связанному списку (linked list). В обозревателе структуры данных один элемент или подэлемент, такой как элемент связанного списка или ключ или значение в хеш-таблице, может быть выбран и показан в «подобозревателе», или они могут быть перетащены как отдельные обозреватели. Обычные структуры данных автоматически распознаются и отображаются структурно. Другие обозреватели показывают, например, цветовой переключатель для Color, изображение — для иконки, и двоичный вид для double. Несколько обозревателей может быть помещено в одно окно и его содержимое может быть сохранено в файл.

Граф профиля сложности[ | ]

Внешние изображения
Граф профиля сложности CPG

Граф профиля сложности[3] (CPG) — это уникальная диаграмма сложности на уровне строки а. Её цель — помочь распознать чрезмерно сложные места исходного а. jGRASP умеет создавать CPG для Java и Ada. Метрика включает обычные измерения, такие как доступность и сложность содержания, которые могут быть показаны по-отдельности. Диаграммы CPG встраиваются в окно редактора а в jGRASP так, что выделение секции в CPG приведёт к выделению соответствующей части исходного а и наоборот. Они так же прокручиваются вместе так, что видимая в данный момент часть исходного а показывается в окне диаграммы CPG.

Диаграмма UML[ | ]

Внешние изображения
Диаграмма UML

jGRASP так же создаёт диаграммы UML для Java. Диаграммы UML дополнены большей интерактивной функциональностью. Щелчок на ребре зависимости, например, покажет все зависимости между двумя классами в отдельной части окна. Отсюда участки исходного а, создающие каждую зависимость, могут быть показаны списком и просмотрены.

История[ | ]

jGRASP была создана Джеймсом Кроссом (James Cross) и Ларри Баровским (Larry Barowski) на кафедре информатики и программной инженерии в инженерном колледже Самуила Гинна Обернского университета. Среда разработки поддерживается и оценивается командой разработчиков jGRASP. Разработка jGRASP поддерживается исследовательским грантом Национального научного фонда.

Разработка предыдущих версий GRASP поддерживалась исследовательскими грантами Космического центра Маршалла (НАСА), Управления перспективных исследовательских проектов Министерства обороны США (DARPA), и Управления связи Министерства обороны США (DISA).

Примечания[ | ]

Ссылки[ | ]

См. также[ | ]