inblog logo
|
devleekangho
    용어정리

    [디자인 패턴] 프록시 패턴 (Proxy Pattern)

    KangHo Lee's avatar
    KangHo Lee
    Nov 13, 2024
    [디자인 패턴] 프록시 패턴 (Proxy Pattern)
    Contents
    1. 소스 코드2. 대리인 DoormanProxy 객체
    💡
    다른 객체에 대한 접근을 제어하는 대리 객체를 제공하는 패턴입니다.

    1. 소스 코드

    package ch02; public abstract class Animal { public abstract String getName(); } package ch02; // 고양이 public class Cat extends Animal { private String name = "고양이"; public String getName() { return name; } } package ch02; // 쥐 public class Mouse extends Animal { private String name = "쥐"; public String getName() { return name; } } package ch02; // SRP(Single Responsibility Principle, 단일 책임 원칙) public class Doorman { public void 쫓아내(Animal animal) { System.out.println(animal.getName()+" 쫓아내"); } } package ch02; public class DoormanProxy { private Doorman doorman; public DoormanProxy(Doorman doorman) { this.doorman = doorman; } public void 쫓아내(Animal animal) { System.out.println("안녕"); doorman.쫓아내(animal); } } package ch02; // main public class App { public static void main(String[] args) { Doorman doorman = new Doorman(); // 의존성 주입(매개변수로 Doorman을 받는다) DoormanProxy doormanProxy = new DoormanProxy(doorman); Cat cat = new Cat(); Mouse mouse = new Mouse(); doormanProxy.쫓아내(cat); doormanProxy.쫓아내(mouse); } }

    2. 대리인 DoormanProxy 객체

    • 매개변수로 Doorman 객체를 받습니다. (의존성)
    • Doorman 대신 cat과 mouse를 쫓아냅니다.
     
    Share article
    Contents
    1. 소스 코드2. 대리인 DoormanProxy 객체

    devleekangho

    RSS·Powered by Inblog