어댑터 패턴(adapter pattern)

taeheon95·2022년 1월 20일
0

디자인 패턴

목록 보기
4/5

디자인 패턴

어댑터 패턴이란?

한 객체의 인터페이스를 클라이언트 객체의 인터페이스로 변환하는 패턴입니다. 어댑터를 이용하면 인터페이스 호환성 문제 때문에 같이 쓸 수 없는 객체들을 연결해서 사용할 수 있습니다.

어댑터 패턴은 어떤 데이터 또는 객체의 인터페이스가 호환되지 않아서 같은 데이터를 사용하는 환경인데도 객체가 달라져야 하는 상황이 발생할 때가 있습니다. 저 같은 경우에는 회사에서 리액트를 개발을 할 때 백엔드에서 거의 같은 데이터를 받고 같은 로직이 돌아가게 되는데 데이터의 명칭이 다른 경우가 있었습니다. 그 경우 어댑터 패턴을 이용하여 데이터를 호환될 수 있는 데이터로 변경하여 사용해본적이 있습니다.

어댑터 패턴 구현 예시

어댑터 패턴의 대표적인 예시는 java의 iterator를 들 수 있습니다. iterator의 경우, 자바에서 컬랙션 프레임워크의 서로 다른 구현체들을 iterator를 통해서 사용자는 전부 똑같이 접근할 수 있습니다.

여기서 사용자가 작성하는 코드에서 iterator를 사용하는 객체가 클라이언트 객체의 인터페이스이고 iterator가 어댑터 그리고 adaptee 객체 원래의 컬랙션입니다.
구현 코드

여기서는 List 객체에 대해서만 사용했지만 다른 컬랙션(map)에서도 사용할 수 있습니다.

profile
계속 공부하는 개발자

0개의 댓글