이번에는 Facade Pattern 에 대해서 알아봅시다.
Facade Pattern
어떤 서브시스템의 일련의 인터페이스에 대한 통합된 인터페이스를 제공. 퍼사드에서 고수준 인터페이스를 정의하기 때문에 서브시스템을 더 쉽게 사용할 수 있습니다.
이번에는 바로 디자인 원칙도 살펴보겠습니다. "최소 지식 원칙" 입니다. 객체 사이의 상호작용은 될 수 있으면 아주 가까운 사이에서만 허용하라는 원칙입니다.
퍼사드 패턴은 단순화된 인터페이스를 통해서 서브시스템을 더 쉽게 사용할 수 있도록 하기 위한 용도로 쓰입니다.
위의 예시에서 클라이언트는 HomeTheaterFacade 하나에만 상호작용을 하고 있습니다 (최소 지식 원칙)
HomeTheaterFacade 는 클라이언트 대신 모든 서브시스템 구성요소를 관리해주고 있고, 구성요소가 바뀌어도 클라이언트에는 아무 영향이 없습니다.
위를 구현한 코드는 https://github.com/KyungSik9870/DesignPattern/tree/master/src/study/pattern/facade 여기서 확인할 수 있습니다. 😀
'소프트웨어 관련 > Design Pattern' 카테고리의 다른 글
[Design Pattern] Adapter Pattern (0) | 2022.06.04 |
---|---|
[Design Pattern] Command Pattern (0) | 2022.05.13 |
[Design Pattern] Singleton Pattern (0) | 2022.05.11 |
[Design Pattern] Abstract Factory Pattern (0) | 2022.05.10 |
[Design Pattern] Factory Method Pattern (0) | 2022.05.10 |