Skip to content

Latest commit

Β 

History

History
22 lines (14 loc) Β· 1.1 KB

Proxy_Pattern.md

File metadata and controls

22 lines (14 loc) Β· 1.1 KB

Proxy Pattern

Proxy Pattern (ν”„λ‘μ‹œ νŒ¨ν„΄)

Untitled

νŠΉμ • 객체둜의 접근을 μ‘°μ ˆν•˜κΈ° μœ„ν•΄ λŒ€λ¦¬μž(ν”„λ‘μ‹œ)λ₯Ό μ„Έμš°λŠ” 것

λ§Žμ€ λΉ„μš©μ΄ λ“œλŠ” κΈ°λŠ₯은 사이에 ν”„λ‘μ‹œ(κ°„λ‹¨ν•œ 객체)λ₯Ό 두고 ν•„μš”ν•  λ•Œμ—λ§Œ μ‹€μ œ 객체(λ³΅μž‘ν•œ 객체)둜 λŒ€μ²΄

ꡬ성 μš”μ†Œ

  • Proxy - λŒ€λ¦¬μž 객체. μ‹€μ œ 객체(RealSubject)에 λŒ€ν•œ 레퍼런슀λ₯Ό μœ μ§€ν•œλ‹€. ν”„λ‘μ‹œλ₯Ό 톡해 μ‹€μ œ 객체에 λŒ€ν•œ 접근을 μ‘°μ ˆν•  수 μžˆλ‹€.
  • Subject - μ‹€μ œ 객체와 ν”„λ‘μ‹œμ˜ 곡톡 μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ •μ˜ν•œλ‹€.
  • RealSubject - μ‹€μ œ 객체이닀.

μ’…λ₯˜

  • 리λͺ¨νŠΈ ν”„λ‘μ‹œ - μ›λž˜ 객체가 λ‹€λ₯Έ μ£Όμ†Œ 곡간에 μ‘΄μž¬ν•˜λŠ” 경우 이 사싀을 숨길 수 μžˆλ„λ‘ ν”„λ‘μ‹œλ₯Ό λ‘ 
  • 가상 ν”„λ‘μ‹œ - μ›λž˜ 객체가 맀우 λ³΅μž‘ν•œ 경우 μ•„μ£Ό λ‹¨μˆœν•œ ν”„λ‘μ‹œλ₯Ό λ‘ 
  • ν”„λ‘œν…μ…˜ ν”„λ‘μ‹œ - μ›λž˜ 객체에 λŒ€ν•œ μ ‘κ·Ό κΆŒν•œμ„ μ œμ–΄ν•˜κΈ° μœ„ν•΄ ν”„λ‘μ‹œλ₯Ό λ‘ 
  • 슀마트 레퍼런슀 - μ›λž˜ 객체에 μ ‘κ·Όν•  λ•Œ 좔가적인 μ•‘μ…˜μ„ μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄ ν”„λ‘μ‹œλ₯Ό λ‘