Design patterns are design ideas, experiences which can be used effectively.
A proxy is applicable whenever there is a need for a more versatile or sophisticated reference to an object than a simple pointer. A remote proxy provides a local representation for an object in a different address space. It provides an interface identical to the subjects, controls access to the real subject and also may be responsible for creating and deleting it. A remote proxy is responsible for encoding a request and its arguments and for sending the encoded request to the real subject in a different address space. It may also responsible for transmuting a response from the real subject back to the client.