jGRASP
jGRASP![]() | |
![]() | |
개발자 | jGRASP 팀 |
---|---|
안정된 릴리스 | 2.0.6_09 / 2022년 1월 31일 |
운영 체제 | 크로스 플랫폼 |
유형 | 자바 IDE |
면허증. | 라이선스, 프리웨어 |
웹 사이트 | http://www.jgrasp.org/ |
jGRASP는 소프트웨어 시각화의 자동 생성을 포함하는 개발 환경입니다.실행 시 소스 코드 구조의 정적 시각화 및 데이터 구조의 시각화를 생성합니다.[1]
런타임 데이터 구조 시각화는 IntelliJ IDEA, Android Studio 및 Eclipse 플러그인으로도 사용할 수 있습니다.
jGRASP는 Java에서 구현되며 Java Virtual Machine(Java 버전 1.8 이상)을 사용하는 모든 플랫폼에서 실행됩니다.CLAPP(Linux, UNIX) 및 pcGRASP(Windows)는 C/C++로 작성되며, jGRASP는 Java로 작성됩니다(jGRASP의 "j"는 JVM에서 실행됨을 의미합니다).jGRASP 웹 사이트는 Windows, Mac OS용 다운로드를 제공하며 Linux 및 기타 시스템에 적합한 일반 ZIP 파일로 제공합니다.
Java 이외의 언어의 경우 jGRASP는 소스 코드 에디터입니다.모든 프로그래밍 언어에 대해 대부분의 무료 상용 컴파일러와 함께 작동하도록 구성할 수 있습니다.
시각화
Control Structure[2][3] Diagram(CSD; 제어구조도)은 소스 코드의 들여쓰기로 보통 차지하는 공간에 맞는 제어 흐름도입니다.그 목적은 소스 코드의 가독성을 향상시키는 것입니다.jGRASP는 Java, C, C++, Objective-C, Ada 및 VHDL용 CSD를 생성합니다.편집창에는 CSD 기반의 폴딩 기능과 CSD 구조 위에 마우스를 올려놓았을 때 화면 밖에 있는 코드 구조의 첫 번째 행을 표시하는 '콘텍스트힌트' 기능이 있습니다.
jGRASP의 Java 객체[4][5] 뷰어는 디버깅 및 워크벤치 작업 중에 데이터 구조 및 기타 객체와 원인에 대한 인터페이스 기반, 구조 및 기타 뷰를 제공합니다.예를 들어 콘텐츠 기반 뷰는 ArrayList와 LinkedList를 요소 목록과 동일하게 표시합니다.구조 뷰에는 트리, 링크 리스트, 해시 테이블 등의 내부 구조가 표시됩니다.링크된 데이터 구조의 구조 뷰는 로컬 변수 노드 및 주 구조와의 관계를 표시합니다.결과는 노드가 링크 목록에 추가되는 경우와 같이 변경이 발생하면 애니메이션으로 표시됩니다.공통 데이터 구조는 자동으로 식별되고 구조적으로 표시됩니다.예를 들어, 다른 뷰어는 색상의 색상 스왓치, 아이콘의 이미지 및 이중의 이진 세부 정보를 표시합니다.하나의 뷰어 캔버스 창에서 여러 뷰어를 조합하여 콘텐츠를 파일에 저장할 수 있습니다.
Complexity Profile[6] Graph(CPG; 복잡도 프로파일 그래프)는 스테이트먼트 수준의 복잡도 다이어그램입니다.그 목적은 소스 코드의 지나치게 복잡한 영역을 식별하는 것입니다.jGRASP는 Java와 Ada 모두에 대해 CPG를 생성합니다.메트릭에는 개별적으로 표시할 수 있는 도달 가능성 및 콘텐츠 복잡성 등의 일반적인 척도가 포함됩니다.
jGRASP는 또한 대화형 종속성 정보와 함께 Java용 UML 다이어그램을 생성합니다.
역사
jGRASP는 Ouburn University의 Samuel Ginn College of Engineering의 컴퓨터 과학 및 소프트웨어 공학부에서 James Cross와 Larry Barowski에 의해 만들어졌습니다.jGRASP 팀에 의해 유지되고 평가됩니다.jGRASP의 개발은 미국 국립과학재단의 연구보조금으로 지원되고 있다.
이전 버전의 TRAPP의 개발은 NASA 마셜 우주 비행 센터, 국방부 고등 연구 프로젝트 기관(DARPA), 국방 정보 시스템 기관(DISA)의 연구 보조금으로 지원되었다.
「 」를 참조해 주세요.
레퍼런스
- ^ "jGRASP Home Page". www.jgrasp.org. Retrieved 2020-06-01.
- ^ "Ada 95의 증분 추상화 및 정교화를 위한 시각적 지원"
- ^ "GRASP/Ada 95: 제어 구조도를 사용한 시각화"
- ^ "데이터 구조의 동적 개체 뷰어"
- ^ "Lightweight IDE에서 동적 데이터 구조 시각화를 제공하기 위한 확장 가능한 프레임워크"
- ^ "소스 코드의 가시화와 측정"