Proxy Pattern

The Proxy Pattern as the name implies, allows us to create a proxy or an agent for the real object. So, If you want to talk to an object, you will talk to it through its proxy or agent, this agent takes our message and forwards it to the target object.

In this Proxy we can perform some interesting tasks such as logging, access control, caching and so on.