JAVA 객체지향 디자인 패턴<UML과 GoF 디자인 패턴 핵심 10가지로 배우는> 정리
클래스 다이어그램은 시간에 따라 변하지 않는 시스템의 정적인 면을 보여주는 UML 구조 다이어그램이다.
클래스 다이어그램은 시스템을 구성하는 클래스와 그들 사이의 관계를 보여준다.
클래스 다이어그램 = 클래스 + 관계
1.3.1 클래스
클래스(Class)란
- 동일한 속성과 행위를 수행하는 객체의 집합
- 객체를 생성하는 설계도
즉, 클래스는 공통의 속성과 책임을 갖는 객체들의 집합이자 실체 객체를 생성하는 설계도이다.
클래스는 "변화의 기본 단위"
- 디자인 패턴을 제대로 이해하려면 만들어진 프로그램을 흔들어보고 어떤 것이 변화되는지를 잘 살펴봐야 한다.
UML 클래스 표현
- 가장 윗부분 : 클래스 이름
- 중간 부분 : 속성(클래스의 특징)
- 마지막 부분 : 연산(클래스가 수행하는 책임)
- 경우에 따라선 속성 부분과 연산 부분 생략 가능
- 속성과 연산의 가시화 정의
- UML에서는 접근제어자를 사용해 나타낸다.
본래 클래스 다이어그램은 개념 분석 단계에서 구현에 이르기까지 광범위하게 사용되며, 속성 및 연산을 기술하는 상황에 따라 강조하는 것이 다를 수 있다.
- 분석 단계에서는 속성의 구체적인 타입 정보나 가시화 정보보다 어떤 것을 속성으로 할지가 더 중요
- 설계 단계에서는 바로 코드 작성이 가능하게 구체적인 타입 정보와 가시화 정보를 기술