[設計模式] 代理模式 (Proxy Pattern)
Introduction
(原文出處 大話設計模式 )
代理模式:為其他物件提供一種代理以控制對這個物件的存取。
可以先參考 UML 模型 http://terrylee.cnblogs.com/archive/2006/05/18/403382.html
代理物件因為具備原有物件的功能,所以代理物件與實際物件實作了相同的介面。
Example
定義一個介面
女孩類別
追求者類別
代理類別
Client
輸出
用在哪些地方?
- 遠端代理。隱藏一個物件存在於不同位址空間的事實。(ex .NET 的 WebService 應用)。
- 虛擬代理。用來存放實體化需要很長時間的真實物件。(ex 網頁顯示文字圖在慢慢出來)。
- 安全代理。控制真實物件存取的權限。
- 參考代理。當調用真實物件時,代理可以計算真實物件被參考的次數,或是真實物件正在使用,請下個使用者稍待。
Refrence
- http://terrylee.cnblogs.com/archive/2006/05/18/403382.html [TerryLee's Tech Space]
- http://en.wikipedia.org/wiki/Proxy_pattern
- http://www.dofactory.com/Patterns/PatternProxy.aspx#_self2
三小俠 小弟獻醜,歡迎指教