# Proxy pattern
https://refactoring.guru/design-patterns/proxy

- The Proxy pattern suggests that you create a new proxy class with the same interface as an original service object.
- Lazy initialization (virtual proxy)
- Access control (protection proxy)
- Local execution of a remote service (remote proxy)
- Logging requests (logging proxy)
- Caching request results (caching proxy)
## lazy object
https://www.greyblake.com/blog/lazy-object-pattern-in-ruby/