Proxy

Proxy: a stand-in that controls access

Problem: you want to gate, delay, or guard access to a real object β€” lazy loading, auth, rate limiting β€” without changing that object.

PawWalk scenario: a walker's high-res photo is expensive to load. A proxy loads it only on first read, then delegates to the real photo afterward.

The proxy shares the real object's interface but wraps the call with its own logic (here: memoized lazy load).