본문 바로가기
DEV/디자인패턴

01. UML에 대해서(클래스/시퀀스 다이어그램)

by 어쩌다개발 2024. 2. 27.
반응형

UML

- UML은 Unified Modeling Language의 약자.
- 시스템을 시각화하거나 시스템의 사양이나 설계를 문서화하기 위한 표현 방법

클래스 다이어그램

- UML의 클래스 다이어그램(Class Diagram)은 클래스나 인스턴스, 인터페이스 등의 정적인 관계를 표현

클래스의 계층 관계를 표현한 클래스 다이어그램

인터페이스와 구현

-추상 클래스와의 유사성을 강조하기 위해 인터페이스 이름에 이탤릭체를 사용하였지만, 사용하지 않는 경우도 많음.
- 점선의 화살표는 인터페이스와 구현 클래스의 관계를 나타내고 있음. 화살표는 구현 클래스에서 인터페이스로 향하고 있음.(implements)

- '갖고 있는' 관계를 집약(aggregation)이라고 함. 어떤 구현이라해도 인스턴스를 갖고 있으면 개수에 상관없이 그 관계는 집약임.
마름모꼴이 붙은 선이 집약을 나타냄.

액세스 제어

+가 붙은 경우 : public
- 가 붙은 경우 : private
# 가 붙은 경우 : protected
~ 가 붙은 경우 : default

클래스의 관계

검은화살표를 붙여 클래스의 관계를 나타낸다.

시퀀스 다이어그램

- UML의 시퀀스 다이어그램(Sequence Diagram)은 프로그램이 작동할 때 어떤 메서드가 어떤 순서로 실행되는가, 어떤 추상 클래스가 어떤 순서로 실행되는가를 표현한 것.
- 클래스 다이어그램 : 시간에 의해 변하지 않는 것(정적인 관계)
- 시퀀스 다이어그램 : 시간에 의해 변하는 것(동적인 관계)

- 직사각형  :Client -> [인스턴스 이름]:클래스
- 점선 : 라이프 라인(생존선) / 위쪽은 과거, 아래쪽은 미래
- 파이프 라인 : 오브젝트(객체)가 활동 중인 것을 얘기함.
- 앞이 검은 실선 화살표 : 메소드의 호출
- 점선 화살표 : 메서더에서의 리턴(반환)

반응형

'DEV > 디자인패턴' 카테고리의 다른 글

Iterator(반복자) 패턴  (0) 2024.03.06

댓글