- Adapter 패턴 : 사이에 끼워 재사용한다
Adapter 패턴은 제공된 것과 필요한 것 사이에 들어가서 그 차이를 메워주는, 호환되지 않는 인터페이스를 가진 객체들이 협업할 수 있도록 하는 구조적 디자인 패턴이다. Wrapper 패턴이라고도 불린다.
- 어떤 경우에 사용할까?
Adapter 패턴은 기존 클래스에 한겹 덧씌어 필요한 클래스를 만든다.
즉, 기존 클래스는 충분히 테스트되어 버그가 없는 것을 알기에 Adapter 역의 클래스를 중점적으로 살펴보면 프로그램 검사가 매우 편해진다. 새로운 인터페이스(API)에 맞추기 위해 기존 클래스의 소스를 수정하게 된다면, 기존 클래스 또한 다시 테스트 해야 한다.
소프트웨어 버전 업에도 유용하게 사용된다. Adapter 패턴을 사용하면, 신버전과 구버전을 공존시키고 유지 보수까지 편하게 할 수 있다.
- Adapter 패턴과 상속, 위임
Adapter 패턴은 상속과 위임, 두 가지 방법으로 구현할 수 있다.
두 가지 모두 구현해볼 예정이지만, 많은 개발자들이 상속 보다는 위임을 사용하는 걸 제안한다.
- Adapter 패턴 예제 코드
참고문헌 : 유키 히로시 저/김성훈 역(2022), JAVA 언어로 배우는 디자인 패턴 입문, 영진닷컴
참고자료 : https://refactoring.guru/ko/design-patterns/adapter