作為一個初級開發(fā)者,可能不會接觸到代理模式,但是在很多框架的使用中都不知不覺使用了代理模式,比如servlet的過濾器鏈,spring的AOP,以及spring mvc的攔截器等。所以了解代理模式對于個人的成長是不可避免的。

在某些情況下,一個客戶不想或者不能直接引用一個對象,此時可以通過一個稱之為“代理”的第三者來實現(xiàn)間接引用。代理對象可以在客戶端和目標(biāo)對象之間起到中介的作用,并且可以通過代理對象去掉客戶不能看到的內(nèi)容和服務(wù)或者添加客戶需要的額外服務(wù)。

 

原文和作者一起討論:http://www.cnblogs.com/intsmaze/p/6013461.html

新浪微博:intsmaze劉洋洋哥

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營銷培訓(xùn),SEM培訓(xùn),網(wǎng)絡(luò)優(yōu)化,在線營銷培訓(xùn)

    通過引入一個新的對象來實現(xiàn)對真實對象的操作或者將新的對象作為真實對象的一個替身,這種實現(xiàn)機制即為代理模式,通過引入代理對象來間接訪問一個對象,這就是代理模式的模式動機。 

 

    代理模式(Proxy Pattern) :給某一個對象提供一個代理,并由代理對象控制對原對象的引用。代理模式的英文叫做Proxy或Surrogate,它是一種對象結(jié)構(gòu)型模式。

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營銷培訓(xùn),SEM培訓(xùn),網(wǎng)絡(luò)優(yōu)化,在線營銷培訓(xùn)

    代理模式示意結(jié)構(gòu)圖比較簡單,一般可以簡化為如下圖所示,但是在現(xiàn)實中要復(fù)雜很多。

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營銷培訓(xùn),SEM培訓(xùn),網(wǎng)絡(luò)優(yōu)化,在線營銷培訓(xùn)

 

如下的場

網(wǎng)友評論