더북(TheBook)

3.5.7 현실적인 고려 사항

디자인 패턴에서 추상화 위임

위임을 이용하는 몇몇 디자인 패턴(예 : 중재자, 프록시, 파사드, 어댑터)에는 불필요한 추상화처럼 보이는 클래스가 있다. 예를 들어, 객체 어댑터 패턴에서 Adapter 클래스는 클라이언트 요청을 Adaptee의 적절한 메서드로 단순히 위임하는 것처럼 보일 수 있다.[54] 하지만 Adapter 클래스 이면에 숨어 있는 핵심 의도는 Adaptee의 인터페이스를 클라이언트 요구에 맞춰 조정하는 구체적이고 잘 정의된 책임을 완수하는 것이다. 이런 이유로 단순히 위임을 수행하는 추상화가 불필요한지를 판단하기 전에 주의 깊게 맥락을 살펴봐야 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.