어댑터 패턴(Adapter pattern)은 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 변환하는 패턴으로, 호환성이 없는 인터페이스 때문에 함께 동작할 수 없는 클래스들이 함께 작동하도록 해준다.
연결
시킬 때, 혹은 두개의 인터페이스 사이의 연결고리
를 만들고 싶을 때 사용한다.복잡한 서브시스템에 인터페이스를 단순하게 구성하고자 할 때 사용한다.
어댑터 패턴은 두 시스템을 어떻게 연결하는 가에 관심이 있었다면, 파사드 패턴은 시스템간에 결합도를 줄이고자 할 때 사용한다.
서브시스템을 계층화 시키고자 할 때 사용한다.
클라이언트에게 단순한 메소드doSomething()
를 제공하고 뒤쪽의 복잡한 상호작용은 숨긴다.
새로운 기능을 추가
하고 싶을 때 사용한다.접근을 제어
하고 싶을 때 사용한다.💡어댑터 패턴(Adaptor), 데코레이터 패턴(Decorator), 프록시 패턴(Proxy)의 코드가 상당히 유사하지만, 각자 사용목적이 다르기 때문에 상황에 맞게 골라 사용하면 된다.