Proxy Pattern

Definition-Provide a surrogate or placeholder for another object to control access to it.

  • Proxy   
    • maintains a reference that lets the proxy access the real subject. Proxy may refer to a Subject if the RealSubject and Subject interfaces are the same.
    • provides an interface identical to Subject's so that a proxy can be substituted for for the real subject.
    • controls access to the real subject and may be responsible for creating and deleting it.
    • other responsibilites depend on the kind of proxy:
      • remote proxies are responsible for encoding a request and its arguments and for sending the encoded request to the real subject in a different address space.
      • virtual proxies may cache additional information about the real subject so that they can postpone accessing it. For example, the ImageProxy from the Motivation caches the real images's extent.
      • protection proxies check that the caller has the access permissions required to perform a request.
  • Subject
    • defines the common interface for RealSubject and Proxy so that a Proxy can be used anywhere a RealSubject is expected.
  • RealSubject
    • defines the real object that the proxy represents.

Types of Proxies

1.  Remote Proxy - Provides a reference to an object located in a different

address space on the same or different machine

2.  Virtual Proxy - Allows the creation of a memory intensive object on

demand. The object will not be created until it is really needed.

3.  Copy-On-Write Proxy - Defers copying (cloning) a target object until

required by client actions. Really a form of virtual proxy.

4.  Protection (Access) Proxy - Provides different clients with different levels

of access to a target object

5.  Cache Proxy - Provides temporary storage of the results of expensive target

operations so that multiple clients can share the results

6.  Firewall Proxy - Protects targets from bad clients (or vice versa)

7.  Synchronization Proxy - Provides multiple accesses to a target object

8.  Smart Reference Proxy - Provides additional actions whenever a target

object is referenced such as counting the number of references to the object

//if u find anything interesting, pls contact with me.

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值