SSAFY11th-book-study / book-study

0 stars 0 forks source link

[6.3.2] 다이내믹 프록시 #62

Open a-young-kim opened 4 months ago

a-young-kim commented 4 months ago

P. 437 image 다이내믹 프록시는 한 번에 하나 이상의 인터페이스를 구현할 수 있다고 합니다.

  1. 한 번에 하나 이상의 인터페이스를 구현할 경우, HelloTarget이 implements된 인터페이스가 위의 구현할 모든 인터페이스를 구현하고 있어야 하는지 궁금합니다.

  2. 사진에서는 하나의 데코레이션만 추가하여 다이내믹 프록시를 생성하였지만, 여러 데코레이션을 추가할 경우에는 new lowercase(new UppercaseHandler()) 식으로 구현하는 방법이 적절한지 혹은 프록시끼리 중첩될 수 있는지 궁금합니다.

sootudio commented 4 months ago
  1. 제가 잘 이해한 건지는 모르겠는데, 질문에서 인터페이스가 다른 인터페이스를 구현하는게 가능한가요...? 일단 한 번에 여러 인터페이스를 구현하는 경우, 프록시 객체는 각 인터페이스의 메서드를 모두 구현해야 한다고 합니다.

  2. 여러 데코레이션을 추가할 경우, 데코레이터 패턴을 사용하는 것을 권장한다고 나와 있었습니다. 중첩된 프록시를 사용할 수도 있지만, 코드가 복잡해지고 유지보수가 어려워질 수 있으므로 데코레이터 패턴을 활용하여 각 데코레이션을 독립적으로 구현하고, 조합하는 것이 유연한 설계 측면에서 더 나은 방법이라고 합니다.

. . .

누구나 쉽게 배우는 Dynamic Proxy 다루기 해당 블로그에서 두 개의 인터페이스를 사용하는 다이나믹 프록시의 예시가 나오는데, 잘 이해가 가지 않아 그냥 링크만 가져왔습니다... 미안해용