- Adaptee: 실제 사용할 구현체
- Target: 클라이언트가 호출하는 인터페이스
- Adapter: Target과 Adaptee를 연결해주는 어댑터
클라이언트가 호출하는 인터페이스(Target)과 실체 사용할 구현체(Adaptee)가 다를 경우 Adpater를 이용하여 사용호환 시켜준다.
기존 코드를 변경하지 않고 원하는 인터페이스 구현체를 만들어 재사용할 수 있다. (OCP)
기존 코드가 하는 일과 인터페이스 구현체로 변환하는 작업을 각기 다른 클래스로 분리하여 관리할 수 있다. (SRP)