말씀하신 Proxy 가 하는 일을 보통 Delegation 이라고 표현하는데요, 우리말로는 '위임'정도 되는지 모르겠네요. 

어떤 오브젝트가 해야 할 일을 다른 오브젝트에게 위임하는 것을 말합니다. 여기에서 위임을 하는 오브젝트가 위임받는 오브젝트에 대한 레퍼런스를 갖고 있게 되므로 place-holder 라고 설명한 것 같네요. 보통은 래퍼(wrapper) 라고 표현합니다. 

예를 들면.. 

public class A {
private B b;
A(B b) { this.b = b }

void work() { return b.work() };
}

요런거죠. (A 가 할 일을 B 가 하고 있습니다)

참고로.. JDK1.4 부터 java.lang.reflect 패키지에 Proxy 라는 클래스가 추가되었습니다. 런타임에 레퍼클래스를 만들어주는데 꽤 편합니다.


출처 - http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040201&docId=64865645









Posted by linuxism

댓글을 달아 주세요