본문 바로가기

카테고리 없음

코드 시각화 도구

반응형

1. 클래스 & 패키지 다이어그램 생성

(1) IntelliJ IDEA (Community Edition - 무료)

  • 기능: UML 클래스 다이어그램 자동 생성
  • 사용법:
    1. 프로젝트에서 클래스 선택 → 우클릭 → Diagrams  Show Diagram
    2. 패키지 전체 다이어그램도 생성 가능
  • 장점: 실시간 탐색 + 커스터마이징 가능 (메서드/필드 표시 여부 선택)

(2) Eclipse with ObjectAid (무료 플러그인)

  • 기능: 동적 UML 다이어그램 생성
  • 설치: Eclipse Marketplace에서 ObjectAid 검색 후 설치
  • 장점: 드래그 앤 드롭으로 다이어그램 편집 가능

(3) PlantUML (오픈소스)

  • 기능: 코드 기반 다이어그램 생성 (클래스, 시퀀스, 패키지 등)
  • 사용법:
  •  
    @startuml
    class Car {
      -String model
      +void start()
    }
    Car --> Engine
    @enduml
  • 장점: Git 저장소와 연동해 문서화 가능
  • 사이트: PlantUML 공식 페이지

(4) Umlet (무료)

  • 기능: 간단한 UML 다이어그램 도구
  • 장점: 독립 실행형 프로그램 (설치)
  • 다운로드: Umlet 공식 사이트

🔗 2. 의존성 & 호출 흐름 분석

(1) Code Iris (IntelliJ 플러그인 - 무료)

  • 기능: 패키지/클래스 의존성 3D 그래프 생성
  • 설치: IntelliJ Marketplace에서 Code Iris 검색

(2) JDepend (오픈소스)

  • 기능: 패키지 간 의존성 분석 + 리포트 생성
  • 사용법:
     
    java -jar jdepend.jar ./src
  • 다운로드: JDepend GitHub

(3) CDA (Class Dependency Analyzer - 무료)


🌐 3. 웹 기반 시각화 도구

(1) Code2Flow (무료 온라인)

  • 기능: 코드 → 호출 흐름도 생성 (Java 지원)
  • 사이트: code2flow.com

(2) SourceTrail (오픈소스)


📜 4. 문서화 + 시각화 통합

(1) Doxygen (오픈소스)

  • 기능: 소스코드 → HTML/PDF 문서 생성 (의존성 그래프 포함)
  • 설정: Doxyfile에서 EXTRACT_ALL = YES  HAVE_DOT = YES 설정
  • 사이트: Doxygen 공식 페이지

(2) Javadoc + Graphviz (무료)

  • 기능: Javadoc에 Graphviz 연동해 다이어그램 추가
  • 설정:
     
    javadoc -docletpath /path/to/graphviz-doclet.jar -doclet org.spf4j.graphviz.GraphvizDoclet -d ./docs ./src

 추천 조합

  • 간단한 다이어그램  PlantUML
  • IDE 통합  IntelliJ Diagram 또는 Eclipse + ObjectAid
  • 대규모 프로젝트 의존성  JDepend + Doxygen

💡 팁: 코드 시각화 효과적으로 활용하기

  1. 핵심 모듈부터 분석: 예) Main 클래스 → Service  DAO
  2. 의존성이 높은 컴포넌트를 주목: 순환 참조(Circular Dependency) 탐지
  3. 다이어그램을 Git에 저장: 팀원과 공유해 이해도 향상

코드 시각화 도구

  1. CodeFlower
  2. Gource
  3. CodeSee
  4. Embold
  5. SourceInsight

코드 구조 분석 도구

  1. SonarQube
  2. Pylint
  3. ESLint
  4. Checkmarx
  5. FlawFinder
각 링크를 통해 도구를 다운로드하고 설치 방법을 확인할 수 있습니다. 필요에 맞는 도구를 선택하여 사용하시기 바랍니다.
반응형