복합 패턴
개념
여러 패턴을 함께 사용해 다양한 일반적인 문제를 해결하는 방법을 복합 패턴이라고 한다.
단순히 여러 패턴을 조합하는 것이 아니라 여러 문제들의 일반적인 해결법을 제시해야 복합 패턴이라고 할 수 있다.
예시
MVC 패턴
사용자가 인터페이스에 요청을 보내면 컨트롤러에 전달된다.
컨트롤러는 모델을 조작하여 사용자가 원하는 행동을 한다.
모델의 상태가 변경되었다면 이 정보를 사용해 갱신된 뷰를 사용자에게 보여준다.
모델에는 옵저버 패턴을 사용해 상태가 변경되었을 때 모델과 연관된 객체들에 알린다.
뷰는 전략 패턴을 통해 컨트롤러를 선택하여 원하는 행동을 수행하도록 한다.
뷰는 컴포지트 패턴을 이용해 가장 최상위 뷰 컴포넌트에 화면 갱신 요청을 보내 윈도우, 버튼과 같은 다양한 내부 컴포넌트가 갱신되도록 한다.
Last updated