집합 관계 2

[C++] 62. 집합(AGGREGATION) 관계

[C++] 집합(AGGREGATION) 관계 집합 관계는 개체를 보관하는 컬렉션과 개체 사이의 관계입니다. “필통은 연필을 보관할 수 있다.” 처럼 컬렉션 필통과 보관할 연필 사이의 관계입니다. 전산에서 자료구조라고 말하는 컬렉션과 컬렉션에 보관할 개체 사이의 관계입니다. 집합 관계와 구성 관계는 “가지고 있다.” 혹은 “가질 수 있다.”로 표현할 수 있고 영어로 “Has a”로 표현할 수 있어서 “Has a”관계라고도 부릅니다. 집합 관계는 컬렉션과 보관할 개체의 생성과 소멸은 독립적입니다. 참고로 구성 관계는 사람과 눈처럼 소유 개체를 생성할 때 피 소유 개체가 만들어지고 소유 개체가 소멸할 때 피 소유 개체도 같이 해제하는 특징을 갖습니다. 다음은 집합 관계에 있는 Pencil과 PencilCase..

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

[C++] 클래스 간의 관계 이번에는 프로그래밍할 때 개발자가 정의하는 형식과 형식 사이에 관계를 알아보기로 합시다. 여기에서는 UML에서의 클래스 다이어그램에 표현할 수 있는 관계를 기준으로 표현할게요. UML에서 클래스 사이의 관계는 7 가지로 표현할 수 있습니다. 일반화(Generalization) 관계: “피아니스트는 음악가이다.” 집합(Aggregation) 관계: “필통은 연필들과 지우개 등을 보관할 수 있다.” 구성(Composition) 관계: “사람은 눈과 귀 등을 가지고 태어난다.” 직접 연관(Directed Association) 관계: “고용주는 피고용주에게 일을 시킨다.” 연관(Association) 관계: “의사와 약사는 환자 치료에 상호 연관이 있다.” 의존(Dependency..