设计模式学习笔记(9)——代理模式
生活随笔
收集整理的這篇文章主要介紹了
设计模式学习笔记(9)——代理模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
為什么80%的碼農都做不了架構師?>>> ??
定義:代理模式就是給一個對象提供一個代理,并由代理對象控制對原對象的引用。
作用:為其他對象提供一種代理以控制對這個對象的訪問。
類圖:
在代理模式中有如下三個角色:
????? Subject: 抽象角色。聲明真實對象和代理對象的共同接口。
????? Proxy: 代理角色。代理對象與真實對象實現相同的接口,所以它能夠在任何時刻都能夠代理真實對象。代理角色內部包含有對真實對象的引用,所以她可以操作真實對象,同時也可以附加其他的操作,相當于對真實對象進行封裝。
????? RealSubject: 真實角色。它代表著真實對象,是我們最終要引用的對象
代碼:
代理模式的應用場景:
如果已有的方法在使用的時候需要對原有的方法進行改進,此時有兩種辦法:
1、修改原有的方法來適應。這樣違反了“對擴展開放,對修改關閉”的原則。
2、就是采用一個代理類調用原有的方法,且對產生的結果進行控制。這種方法就是代理模式。
使用代理模式,可以將功能劃分的更加清晰,有助于后期維護!
轉載于:https://my.oschina.net/jewill/blog/417144
總結
以上是生活随笔為你收集整理的设计模式学习笔记(9)——代理模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring事务配置
- 下一篇: MVC5+EF6 入门完整教程十