퍼사드 패턴 Facade Pattern
개념
서브시스템들 사이의 의사소통 및 종속성을 최소화한다. 일단의 서브시스템의 기능성을 단순화된 하나의 인터페이스를 제공한다. 이 인터페이스를 public API, 서브시스템의 각 기능을 private API로 볼 수 있다.적용 사례
예를 들어, 로그인 처리에 대해서 알아보자. 사용자가 아이디와 패스워드를 입력하고 로그인 버튼을 클릭하면, WAS 측의 로그인 public API가 호출된다. 이 때, 로그인 처리에 필요한 일단의 복수 기능이 호출된다. 이 기능은 계정 유무 판별, 계정 정보, 게임 머니, 오늘의 한마디, 친구 목록, 주간 랭킹 정보등을 들 수 있다. 모든 기능이 처리된 후, 그 결과를 메시지 등의 형태로 클라이언트에 전달된다.이를 퍼사드 패턴이라 불리고, 로그인 public API가 창구역할(transaction manager)를 하는 인터페이스이고, 그 외를 서브시스템으로 볼 수 있다.
장단점
1. 서브시스템의 구성요소를 보호하고, 은폐할 수 있다.2. 서브시스템과 사용자 코드 간의 결합도를 약하게 한다.
3. 서브시스템의 재활용도가 높아짐.
요약
객체지향언어에서의 추상클래스의 개념과는 관계없음을 주의하자.단순히, 하나의 목적을 달성하기 위해, 하나의 함수에서 여러 복잡한 서브시스템를 호출하고, 그 결과를 돌려주는 개념이다.
Comments