컴파운드 패턴은 딱히 코딩하기가 어려워서 생략.. 어떤 것인지에 대해서만 짚고 넘어가도록 하자.



- 두개 이상의 패턴을 결합하여 일반적으로 자주 등장하는 문제들에 대한 해법 제공.

장점 1. 일반적인 문제를 용이하게 해결할 수 있다.



ex) MVC(모델 뷰 컨트롤러)

모델 : 옵저버 패턴 - 뷰와 컨트롤러에게 상태가 바뀌었을 시에 알린다.

뷰 : 컴포지트 패턴 - 윈도우, 패널, 버튼, 텍스트 레이블 등을 복합객체, Leaf로 구성.

컨트롤러 : 스트래티지 패턴 - 뷰의 특성에 따라 컨트롤러의 전략을 변경.