Clever Geek Handbook
πŸ“œ ⬆️ ⬇️

jGRASP

jGRASP is a lightweight integrated development environment designed specifically to automatically create visualizations of the application to improve its comprehensibility. It creates a static visualization of the structure of the source code of the program and visualization of the data structures during the execution of the compiled code.

jGRASP
Type ofJava IDE
DeveloperjGRASP team
operating systemcross platform software
Hardware platform
Latest version2.0.4_2 (October 19, 2017)
LicenseLicense , freeware
Websitejgrasp.org

jGRASP is developed using the Java programming language and runs on all platforms using the Java virtual machine version 1.6 and higher.

GRASP (for Linux and UNIX) and pcGRASP (for Windows) were written in the C / C ++ programming language, while jGRASP was written in Java. The letter "j" (jay) in jGRASP (jayGRASP) indicates that this integrated development environment runs in the Java Virtual Machine (JVM).

On the jGRASP website, you can download an application for Windows , Mac OS , and a universal ZIP file for Linux and other operating systems.

For other programming languages, jGRASP is useful as a source code editor. It can be configured to work with most free and commercial compilers of any programming language.

Content

  • 1 visualization
    • 1.1 Diagram of program structure
    • 1.2 Browsers
    • 1.3 Graph profile complexity
    • 1.4 UML diagram
  • 2 History
  • 3 notes
  • 4 References
  • 5 See also

Visualization

Program Structure Diagram

  External Images
 Program Structure Diagram (CSD)

A program structure diagram (CSD) is a diagram of the execution of a program algorithm, which is located at the indentation of the generated code. Its goal is to improve the readability of the generated code. jGRASP draws CSD diagrams for Java, C , C ++ , Objective-C , Python , Ada , VHDL, and XML / XHTML . JGRASP CSD diagrams are embedded in the source code editor window and can be drawn upon request. They are created almost instantly (50,000 lines of code per second and even faster on modern equipment). The editor window provides a β€œcontext help” function based on CSD diagrams, which shows the first line of the code structure that is currently out of view when the mouse pointer is placed over the CSD structure.

Browsers

  External Images
 Browsers

Object browsers in Java [1] [2] in jGRASP provide interface-based, structural, and other ways to visualize data structures and other objects and primitives during the debugging process of code and actions with the workbench. Often these ways of presenting (visualizing) are more useful than the traditional tree view, showing the fields of each object. For example, a content-based presentation method shows ArrayList and LinkedList in the same way, as a list of items. The structural way of representing (visualizing) shows the internal structure of trees, linked lists, hash tables, etc. The structural way of representing related data structures shows the local variable nodes and their relationship with the main program structure. The result is rendered when a new change occurs, for example, when a node is added to a linked list. In a data structure browser, a single item or sub-item, such as a linked list item or a key or value in a hash table, can be selected and displayed in the "sub-browser", or they can be dragged as separate browsers. Conventional data structures are automatically recognized and displayed structurally. Other browsers show, for example, a color switcher for Color, an image for an icon, and a binary view for double. Several browsers can be placed in one window and its contents can be saved to a file.

Difficulty Profile Graph

  External Images
 CPG Difficulty Profile Graph

The complexity profile graph [3] (CPG) is a unique complexity diagram at the line level of a code. Its purpose is to help identify overly complex places in the source code. jGRASP can create CPG for Java and Ada. The metric includes common measurements, such as accessibility and complexity of the content, which can be displayed individually. CPG diagrams are embedded in the code editor window in jGRASP so that selecting a section in CPG will result in highlighting the corresponding part of the source code and vice versa. They also scroll together so that the currently visible portion of the source code is shown in the CPG chart window.

UML diagram

  External Images
 UML diagram

jGRASP also creates UML diagrams for Java. UML diagrams are complemented by more interactive functionality. Clicking on the dependency edge, for example, displays all the dependencies between the two classes in a separate part of the window. From here, the source code sections that create each dependency can be shown in a list and viewed.

History

jGRASP was created by James Cross and James Larry Barowski at the Department of Computer Science and Software Engineering at Samuel Ginn College of Engineering at Auburn University . The development environment is maintained and evaluated by the jGRASP development team . JGRASP development is supported by a research grant from the National Science Foundation .

The development of previous versions of GRASP was supported by research grants from the Marshall Space Center ( NASA ), the US Department of Defense Advanced Research Projects Office (DARPA) , and the US Department of Defense Communications Office (DISA).

Notes

  1. ↑ β€œ Dynamic Object Viewers for Data Structures ”
  2. ↑ β€œ An Extensible Framework for Providing Dynamic Data Structure Visualizations in a Lightweight IDE ”
  3. ↑ " Visualization and Measurement of Source Code "

Links

  • Official site
  • Video about Java with jGRASP on MrBool.com

See also

  • Comparison of IDEs


Source - https://ru.wikipedia.org/w/index.php?title=JGRASP&oldid=98386193


More articles:

  • Stardust Crusaders
  • Verkh-Is
  • Zharkov, Nikolai Fadeevich
  • Hermitage (Pavilion)
  • Brugge, Francis
  • Devos Paul
  • Sinarsky District
  • Shamshy (Chui oblast)
  • Sultanbeev, Viktor Ivanovich
  • Administrative division of Kamensk-Uralsky

All articles

Clever Geek | 2019