퍼사드 패턴
퍼사드는 외관, 건물의 정면을 의미한다.
퍼사드 패턴은 복잡하고 일반적인 인터페이스를 가진 객체 그룹을 간단하고 구체적인 인터페이스를 제공한다.
DB를 활용하기 위해 java.sql
패키지의 복잡한 인터페이스를 가진 객체들을 상위 모듈에서 사용하기는 어렵다.
이를 위해 퍼사드 역할을 하는 객체를 만들 수 있다.
Application
입장에는 java.sql
을 알지 못해도 DB에 접근할 수 있게 된다.
다만 퍼사드 패턴은 반드시 퍼사드 객체를 통하기를 강요한다.
미디에이터 패턴
미디에어터는 중재자라는 뜻을 의미한다. 복잡한 객체들의 관계를 캡슐화해서 관리하는 패턴이다. 미디에이터 패턴은 구성 요소들이 서로 직접 통신하지 말고 중재자를 거쳐서 통신한다.
간단한 비유를 해보자면, 관제탑과 비행기들의 관계가 미디에이터 패턴에 해당한다. 비행기들은 이착륙할 때 서로 부딪히지 않기 위해 비행기들끼리 직접 통신하지 않는다. 대신 관제탑과 통신하여 수많은 다른 비행기들과 부딪히지 않고 이착륙을 할 수 있게 된다.
구현은 다음을 참고하자.
https://refactoring.guru/design-patterns/mediator/java/example