[Design Pattern] Adapter

dnjstjt12·2025년 2월 4일
이 글은 java 언어로 배우는 디자인 패턴 입문을 읽고 작성한 글입니다.

1. Adapter 패턴

  • 어댑터는 다른 전기나 기계를 서로 연결하여 잘 작동하도록 하는 것이다. 예를 들면 110V의 가전제품에 220V의 어댑터를 사용하여 전기를 사용할 수 있다.

  • 객체지향 프로그래밍에서 말하는 어댑터는 기존 클래스의 인터페이스를 다른 인터페이스로 호환되게 해주는 패턴이다. 래퍼(Wapper)라고도 한다.

2. 패턴의 구조

  • Target: Adaptor의 기능과 호환하여 필요한 메서드를 결정한다.
  • Client: Target의 메서드를 사용한다.
  • Adaptee: 기존에 있던 클래스다.
  • Adapter: Adaptee를 사용하여 Target의 메서드를 구현한다. 즉 Adaptee를 Target에 맞게 호환시킨다.

3. Adapter 패턴의 종류

객체 어댑터(Object Adapter)

"출처 https://en.wikipedia.org/wiki/Adapter_pattern"

  • 객체 어댑터는 Adaptee(기존 클래스)를 인스턴스화하여 메서드를 처리한다.

클래스 어댑터(Class Adapter)

"출처 https://en.wikipedia.org/wiki/Adapter_pattern"

  • 클래스 어댑터는 Adapter에서 Adaptee를 상속하여 메서드를 처리한다.

4. 패턴 사용 이유

  • 기존 클래스를 건드리지 않고 기존클래스의 필요한 부분을 가져와 구현할 수 있다.
profile
안녕하세요!

0개의 댓글