어댑터 패턴 (Adapter Pattern)은 언제 사용해야 할까?
요구사항 클라이언트가 서로 다른 2개의 클래스에 의존하고자 할 때, 하나의 추상화된 인터페이스로 의존되어야 한다. 클래스 다이어그램으로 나타내면 위와 같다. DoClass는 do()라는 퍼블릭 메서드를 갖고 있으며, RunClass는 run()이라는 퍼블릭 메서드를 갖고 있다. 메서드 명부터 다른 2개의 클래스를 하나의 추상화된 인터페이스로 의존하고자 한다면 어떻게 해야 할까? 방법 1 : 클래스를 수정한다. (전략 패턴) 간단하게 하는 방법은 클래스들의 코드를 수정하여서 인터페이스를 구현하도록 코드를 수정한다. 각기 다른 메서드 명도 통일시킨다면 클라이언트가 하나의 인터페이스를 통해 달라지는 (혹은 확장되는) 클래스들을 의존할 수 있게 된다. 추가 요구사항 만약 의존하는 클래스들의 코드를 수정할 수 없..
Design Pattern
2020. 8. 31. 21:57