1. What is a proxy mode
The client code can not or do not want to be called directly access an object, such as a target object requires functionality not enough to be used by the client, but the need for additional create a proxy object is returned to the client use, this design is the agent mode.
2. Typical applications: lazy loading embedded objects, AOP dynamic proxies