퍼사드 패턴(Facade Pattern)

seunghyun lee·2022년 7월 22일
0

Computer Science

목록 보기
10/19
post-thumbnail

퍼사드 패턴

  • 구조패턴(Structural Pattern)
  • 서브 시스템의 인터페이스 집합에 대한 하나의 상위 수준 인터페이스를 정의하는 패턴
  • 서브 시스템들 사이의 종속성을 줄일 수 있다.

Facade : 클래스 라이브러리 같은 어떤 소프트웨어의 다른 커다란 부분에 대한 간략화된 인터페이스를 제공하는 객체이다.

Subsystem Classes: Facade에 대한 정보를 가지고 있지 않고, 서브시스템즈의 기능을 구현하는 클래스

퍼사드 패턴 예시

  • 모든 관계가 Facade객체를 통해서만 이뤄질 수 있게 단순한 인터페이스를 제공한다.
  • Facade객체는 클라이언트의 요청이 발생했을때 서브시스템 내의 특정한 객체에 요청을 전달하는 역할을 한다.

특징

  • 낮은 결합도: 클라이언트가 서브 시스템즈의 코드를 모르더라도 Facade 클래스를 통해 사용이 가능하다.
  • 서브 클래스 직접 접근 가능: Facade 클래스를 통해 서브 클래스를 사용할지, 서브 클래스를 직접 사용할지 선택이 가능하다.
  • wrapper가 특정 인터페이스를 준수해야하고, 폴리모픽 기능을 지원해야할 경우 어댑터 패턴을 사용한다.

0개의 댓글