[디딤돌 C++] 61. 클래스 간의 관계

이번에는 프로그래밍할 때 개발자가 정의하는 형식과 형식 사이에 관계를 알아보기로 합시다. 여기에서는 UML에서의 클래스 다이어그램에 표현할 수 있는 관계를 기준으로 표현할게요.

UML에서 클래스 사이의 관계는 7 가지로 표현할 수 있습니다.

일반화(Generalization) 관계: “피아니스트는 음악가이다.”

일반화 관계 클래스 다이어그램

집합(Aggregation) 관계: “필통은 연필들과 지우개 등을 보관할 수 있다.”

집합 관계 클래스 다이어그램

구성(Composition) 관계: “사람은 눈과 귀 등을 가지고 태어난다.”

구성 관계 클래스 다이어그램

직접 연관(Directed Association) 관계: “고용주는 피고용주에게 일을 시킨다.”

직접 연관 관계 클래스 다이어그램

연관(Association) 관계: “의사와 약사는 환자 치료에 상호 연관이 있다.”

연관 관계 클래스 다이어그램

의존(Dependency) 관계: “회원 컨트롤은 회원 데이터가 바뀌면 화면에 표시 내용을 변경한다.”

“제품은 공장에서 생성할 수 있다.”

의존 관계 클래스 다이어그램

실현(Realization) 관계: “학생은 공부할 수 있다.”

실현 관계 클래스 다이어그램

실현 관계는 다음처럼 표현하기도 합니다.

실현 관계 클래스 다이어그램