Adapter Pattern
- 특정 클래스 인터페이스를 클라이언트에서 요구하는 다른 인터페이스로 변환
- 호환되지 않아 쓸 수 없었던 클래스를 사용 가능하게 함.
- 기존 클래스를 사용하고 싶지만 그 인터페이스가 나머지 코드와 호환되지 않을 때 사용
구조

- Client
- Target
- 변화에 대한 요구사항
- Adapter
- Adaptee로 구성
- Target 인터페이스를 구현
- Adaptee
- Client와 호환되지 않는 기존 코드
예
- java.util.Arrays#asList()
- java.util.Collections#list()
- java.util.Collections#enumeration()
- java.io.InputStreamReader(InputStream) (returns a Reader object)
- java.io.OutputStreamWriter(OutputStream) (returns a Writer object)
'지식 > 디자인패턴' 카테고리의 다른 글
| Head First Design Patterns : Template Method Pattern (0) | 2024.01.29 |
|---|---|
| Head First Design Patterns : Facade Pattern (0) | 2024.01.29 |
| Head First Design Patterns : Command Pattern (0) | 2024.01.14 |
| Head First Design Patterns : Singleton Pattern (1) | 2024.01.01 |
| Head First Design Patterns : Factory Pattern (0) | 2023.12.31 |