UML은 모델링을 함에 있어서 굉장히 중요한 도구이다. 때문에 해당 내용을 한번 정리해두려고 한다.
UML(Unified Modeling Languege)는 개발자 사이의 의사 소통이 원활하게 이루어지도록 표준화한 통합 모델링 언어이다.

2.0 버전으로는 이렇게 다양한 다이어그램을 지원하고 있으며 대표적으로 구조 다이어그램과 동작 다이어그램으로 나뉜다.
여기서 우리가 중요하게 다룰 것은 구조 다이어그램의 Class Diagram, 동작 다이어그램의 Sequence Diagram과 Use Case Diagram이다.


여러가지 형태로 생략해서 그릴 수 있으며, 위에서 두번째 칸은 필드 세 번째 칸은 메서드를 의미한다.
필드 : 접근제어자 필드변수명 : 필드타입
메서드 : 접근제어자 메서드명(매개변수 타입) : 반환값 타입
| 접근 제어자 | 표시 | 설명 |
|---|---|---|
| public | + | 어떤 클래스의 객체든 접근 가능 |
| private | - | 이 클래스에서 생성한 객체들만 접근 가능 |
| protected | # | 이 클래스와 동일 패키지에 있거나, 상속 관계에 있는 하위 클래스의 객체들만 접근 가능 |
| package | ~ | 동일 패키지에 있는 클래스의 객체들만 접근 가능 |
관계

방향은 화살표가 오른쪽을 향할 때 왼쪽이 참조하는 쪽(관계 코드가 추가되는 쪽) 오른쪽이 참조 당하는 쪽이다.
다중성 표기

객체간 동작(주로 메서드)의 관점에서 그리는 다이어그램의 일종
객체 표현법

메세지 표현

프레임

alt 예시

loop예시

https://online.visual-paradigm.com/diagrams/tutorials/use-case-diagram-tutorial/
https://www.nextree.co.kr/p6753/
도서 - 'JAVA 객체지향 디자인 패턴' 정인상 저