Proxy pattern pruža zamjenu ili predstavnika za drugi objekt kako bi kontrolirao pristup tom objektu. Proxy ima isti sučelje kao i pravi objekt, ali dodaje ponašanje — poput lijenije učitavanja, kontrole pristupa, cachiranja ili logiranja — prije nego što delegira tom objektu.
Što Proxy pattern radi
PROXY → an object that STANDS IN for another, controlling access to it:
→ same interface as the real object (clients use it transparently)
→ adds behavior BEFORE/AROUND delegating to the real object
→ controls WHEN and HOW the real object is accessed
→ "a stand-in that adds control/behavior"
