본문 바로가기
Spring/DesighPattern

GOF패턴 - CompositePattern(구조)

by windy7271 2023. 3. 22.
728x90
반응형

CompositePattern

트리 구조 구현

컨테이너(그릇) 내용물(객체) 동일시(패턴)

 

컴포지트란 OOP 에서 컴포지트(Composite) 는 하나 이상의 유사한 객체를 구성으로 설계된 객체로 모두 유사한 기능을 나타낸다.

이를 통해 객체 그룹을 조작하는 것처럼, 단일 객체를 조작할 수 있다.

 

복합 객체(group of object) 나 단일 객체를 동일하게 취급하는 것을 목적으로 한다.

여기서 컴포지트의 의도는 트리 구조로 작성하여, 전체부분 관계를 표현하는 것이다.

 

>> 오브젝트 들을 트리구조로 한다

Component 동일시하게 만들어주는 인터페이스 역할을 해줄 설계 (abstract)

leaf 상속받은 내용물 (상속을 받은 객체)

composite  -leaf들을 담음 / 그릇   (상속을 받는 그룹)

Object 의 리스트가 들어간다 leaf 가 아니라 Component 가 들어간다.

즉 list 안에 leaf 형태와 composite 도 들어갈 수 있다.

 

반응형

댓글