프록시 패턴은 구체적인 객체에 접근하기 전 또는 후에 대리 객체를 통해 접근하도록 하는 기법이다.
1. 정의
프록시 패턴(Proxy Pattern)은 구조 패턴(Structural Pattern) 중 하나로, 실제 객체에 대한 접근을 제어하는 대리 객체(Proxy)를 제공하는 디자인 패턴이다. 프록시 객체는 실제 객체와 동일한 인터페이스를 구현하며, 실제 객체에 대한 접근을 대신 처리하거나, 접근을 제어하는 역할을 한다.
2. 예제 코드
public interface Todoable {
void 쫓아내(Animal animal);
}
public class Doorman implements Todoable {
@Override
public void 쫓아내(Animal animal) {
System.out.println(animal.getName() + "쫒아내");
}
}
public class DoormanProxy implements Todoable{
private Doorman doorman;
public DoormanProxy(Doorman doorman) {
this.doorman = doorman;
}
@Override
public void 쫓아내(Animal animal) {
hello();
doorman.쫓아내(animal);
}
private void hello(){
System.out.println("안녕");
}
}
3. 정리
Todoable
인터페이스- 공통으로 사용할
쫓아내()
메서드를 정의했다.
Doorman
클래스쫓아내()
메서드를 구현해 실제 동작을 수행한다.
DoormanProxy
클래스- 프록시 객체로
Doorman
을 내부에 가지고 있다. 쫓아내()
메서드를 호출할 때hello()
메서드를 호출하는 프록시 역할을 한다.
Share article