ํ๋ก์ ํจํด(Proxy Pattern)
ํ๋ก์ ํจํด์ด๋? ๋์ ๊ฐ์ฒด์ ์ ๊ทผํ ๋ ์ง์ ์ ๊ทผํ์ง ์๊ณ ๋์ ๊ฐ์ฒด๋ฅผ ๋ํํ๋ ๊ฐ์ฒด๋ฅผ ํตํด ๊ฐ์ ์ ์ผ๋ก ์ ๊ทผํ๋ ๋ฐฉ์์ด๋ค. ํ๋ก์์ ์ฌ์ ์ ์ธ ์๋ฏธ๋ ๋๋ฆฌ์ธ์ด๋ผ๋ ๋ป์ด๋ค. ์ฆ, ๋์ ๊ฐ์ฒด์ ๋๋ฆฌ์ธ์ ํตํด ์ ๊ทผํ๋ ํจํด์ด๋ผ๊ณ ์ดํดํ๋ฉด ๋ ๊ฒ์ด๋ค. ํ๋ก์ ์๋ฒ๋ฅผ ์๊ฐํ๋ฉด ํด๋น ํจํด์ ํน์ง์ ์ดํดํ ์ ์์ ๊ฒ์ด๋ค. ๋๋ณด๊ธฐ ํ๋ก์ ์๋ฒ๋? ์๋ฒ์ ํด๋ผ์ด์ธํธ ์ฌ์ด์์ ํด๋ผ์ด์ธํธ๊ฐ ๋ค๋ฅธ ๋คํธ์ํฌ ์๋น์ค์ ๊ฐ์ ์ ์ผ๋ก ์ ์ํ ์ ์๊ฒ ํด์ฃผ๋ ์์คํ ์ด๋ค. ์ด์ ํ๋ก์ ํจํด์ ์ด๋ป๊ฒ ๊ตฌํํ๋์ง ํ์ธํด๋ณด์ public interface ISubject { void action(); } public class RealSubject implements ISubject { @Override public void action() ..