IntelliJ으로 클래스다이어그램 그리기
🎬 Intro
인텔리제이로 클래스 다이어그램을 그려 봅시다~
✅ 클래스 다이어그램
클래스들의 구조와 서로 간의 의존성을 보여주는 다이어그램 입니다. 클래스 다이어그램은 주로 아래와 같은 이유가 사용 됩니다
- 전체 시스템의 구조와 클래스의 의존성을 쉽게 파악할 수 있습니다.
- 다른 사람들과의 의사소통을 조금 더 명확하고, 세부적으로 논의를 할 수 있습니다.
즉, 자신이 구현한 코드의 구조를 상대방에서 명확하게 전달하고, 쉽게 이해할 수 있도록 돕기 위해 사용 됩니다.
✅ IntelliJ에서 클래스 다이어그램 그리기
🎯 IntelliJ 24.01 버전 기준
- 다이어그램에 포함 될 클래스를 디렉토리 또는 파일 단위로 선택합니다
- 마우스 우클릭을 하고 Diagrams -> Show Diagram을 선택합니다
- 위와 같은 화면이 나오게 되는데, 상단의 심볼에서 주로 사용되는 기능에 대한 설명은 아래와 같습니다.
- Fields : 클래스의
필드 변수
들을 보여줍니다. - Constructors : 클래스의
생성자
를 보여줍니다. - Methods : 클래스
내부의 모든 메서드
들을 보여줍니다. - Properties : 클래스
외부에서 접근 가능한 요소
들을 보여줍니다. - Inner Classes : 클래스 내부의
이너 클래스
들을 보여줍니다. - Show Dependencies : 클래스 간의
의존 관계
를 보여줍니다. - Fit Content : 화면의 사이즈를 다이어그램에 맞게 핏하게 맞춰줍니다.
- Export Diagram : 다이어그램을
이미지 파일
,Mermaid
,PlantUML
등 다양한 형식으로 Export 해줍니다. 저는 주로 이미지 파일로 Export하여 사용합니다. - Refresh Data Model : 클래스의 내용이 변경되었을때
다이어그램의 데이터를 최신 상태로 새로고침
합니다.
- Fields : 클래스의
- 다이어그램이 위치한 화면을 우클릭하면 레이아웃을 선택할 수 있습니다.
- 주로
Orthogonal
을 많이 사용됩니다. 해당 레이아웃은 모든 연결선이 수직 또는 수평으로만 그려지고, 클래스 간의 관계가 90도 각도로 표현돼서 보다 깔끔하게 시각화가 됩니다. Orthogonal
형식의 종류는 아래와 같습니다.- Compact: 다이어그램을 최대한 압축된 형태로 표시합니다. 불필요한 공간을 줄여서 더 깔끔하고 간단하게 보여줍니다.
- Hierarchic Groups: 관련된 클래스들을 그룹으로 묶어서 계층적으로 표시합니다. 패키지나 모듈 단위로 그룹화되어 구조를 더 이해하기 쉽게 만듭니다.
- Hierarchic: 클래스들 간의 상속 관계나 의존성을 계층적으로 표현합니다. 상위 클래스에서 하위 클래스로의 관계를 위에서 아래로 보여줍니다.
- Orthogonal Groups: 클래스들을 직각 형태로 정렬하여 표시합니다. 다이어그램이 더 정돈되고 읽기 쉬워집니다.
- Series Parallel: 클래스들 간의 관계를 직렬 또는 병렬로 배치합니다. 복잡한 의존성을 가진 클래스들을 더 체계적으로 보여줍니다. Channel: 클래스 간의 관계를 채널 형태로 표현합니다. 특히 데이터 흐름이나 의존성을 더 명확하게 보여주고자 할 때 유용합니다.
- 저는 주로
Orthogonal Groups
또는Compact
를 사용합니다.
Appearance
옵션을 통해 배경의 그리드도 제거할 수 있습니다.
✅ 사용예시
- Fields(1), Method(3), Show Dependencies(6) 표시
- Orthogonal Groups 적용
1. Main
2. util
3. constant
This post is licensed under CC BY 4.0 by the author.