설계패턴 6. UML

LSDrug·2024년 6월 8일

설계패턴(完)

목록 보기
6/26

이번에는 UML에 관해 알아보도록 하자.


UML(Unified Modeling Language)

시스템을 시각화 하거나 시스템의 사양이나 설계를 문서화하기 위한 표현방법

통합 모델링 언어는 객체 지향 프로그래밍 소프트웨어 집약 시스템을 개발할 때 산출물을 명세화, 시각화, 문서화할 때 사용한다.

일반적으로 UML의 범위는 매우 넓지만, 본 수업에서는 클래스 다이어그램 및 시퀀스 다이어그램에 대해서만 커버한다.

앞으로 다루게 될 Code Pattern들을 표현할 때도 유용하다.


클래스 다이어그램

이 때, 클래스 다이어그램의 하위클래스, 자식클래스는 출발점으로 하고, 상위클래스, 부모클래스는 도착점으로 하는 화살표를 이용해 표현한다.

이때, 표현방법은 다음과 같다.

  • abstract 클래스, 메소드 등은 이탤릭체로 표현한다.
  • 클래스간 화살표의 방향은 하위클래스에서 상위클래스로 연결한다.

UML를 다시 한번 보자.

또한, 집약 관계는 한 객체가 다른 객체를 포함하는 관계인데, 이는 마름모꼴을 이용해 나타낸다.

그리고 클래스의 관계를 나타내기 위해서 관련된 이름에 색칠된 삼각형 표시를 붙여준다.


시퀀스 다이어그램

UML의 시퀀스 다이어그램은 프로그램이 작동할 때 어떤 메소드가 어떤 순서로 실행되는가, 어떤 추상 클래스가 어떤 순서로 실행되는가를 표현한다.

클래스 다이어그램은 '시간에 의해 변하지 않는 것(정적)'을 나타낸다.

시퀀스 다이어그램은 '시간에 따라 변하는 것(동적)'을 나타낸다.

이때, 메소드 호출은 검은색 화살표로, 메소드 반환은 점선 화살표로 나타낸다.


profile
마약같은 코딩, 마약같은 코딩러

0개의 댓글