日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

『设计模式』小老弟你猜不透我?-- 代理模式

發布時間:2023/12/15 asp.net 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 『设计模式』小老弟你猜不透我?-- 代理模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

23種設計模式+額外常用設計模式匯總 (持續更新)

代理模式

代理模式(proxy)模式給某一個對象提供一個替身或占位符,以控制對這個對象的訪問。
所謂代理,就是一個人或者一個機構代表另一個人或者另一個機構采取行動。在一些情況下,一個客戶不想或者不能夠直接引用一個對象,而代理對象可以在客戶端和目標對象之間起到中介作用。

代理模式結構

  • 抽象主題(Subject)角色 聲明了真實主題和代理主題的共同接口,這樣一來在任何使用真實主題的地方都可以使用代理主題。
  • 代理主題(Proxy)角色 代理主題角色內部含有對真實主題的引用,從而可以再任何時候操作真實主題對象;代理主題角色提供一個與真實主題角色相同的接口,以便可以再任何時候都可以替代真實主題; 控制真實主題的應用,負責在需要的時候創建真實主題對象(和刪除主題對象)
  • 真實主題(RealSubject)角色 定義了代理角色所代表的真實對象

應用場景:

1. 遠程(Remote)代理

為一個位于不同的地址空間的對象提供一個局域代表對象。可以隱藏一個對象存在于不同地址空間的事實。這個不同的地址空間可以使在本機器中,也可是在另一臺機器中。遠程代理又叫做大使。
可以將網絡的細節隱藏起來,使得客戶端不必考慮網絡的存在。客戶完全可以認為被代理的對象是局域的而不是遠程的,而代理對象承擔了大部分的網絡通信工作。

2. 虛擬(Virtual)代理

代理對象可以在必要的時候才將被代理的對象加載。代理可以對加載過程加以必要的優化。當一個模塊的加載十分耗費資源的時候,虛擬代理的優點就非常明顯。
應用:

某個客戶端不能直接操作到某個對象,擔又必須和那個對象有所互動。
對于開銷很大的對象,只有在使用它是才創建,這個原則可以為為我們節省很多寶貴的內存資源。

3. 保護(Protect or Access)代理(安全代理)

可以在運行時對用戶的有關權限進行檢查,然后在核實后決定將調用傳遞給被代理的對象。
授權機制:不同級別的用戶對同一對象擁有不同的訪問權利。

4. 智能引用(Smart Reference)代理

當一個對象唄引用是,提供一些額外的曹鎖,比如講對此對象調用的次數記錄下來等。

5. Copy-on-Wright代理

虛擬代理的一種。把復制(克隆)拖延到只有在哭護短需要時,才真正采取行動。

6. Cache代理

為那些昂貴操作的結果提供臨時的存儲空間,一遍多個客戶端可以共享這些結果。

7. 防火墻(Friewall)代理

保護目標,不讓惡意用戶接近。

8. 同步化(Synchronization)代理

使幾個用戶能夠同時訪問目標對象而沒有沖突。

優點:

1.職責清晰。
2.高擴展性。
3.智能化。

缺點:

  • 由于在客戶端和真實主題之間增加了代理對象,因此有些類型的代理模式可能會造成請求的處理速度變慢。
  • 實現代理模式需要額外的工作,有些代理模式的實現非常復雜。
  • 實現:


    抽象主題

    package Proxy;public abstract class Subject {public abstract void requestA();public abstract void requestB();public abstract void requestC(); }

    真正的主題 需要被保護的

    package Proxy;public class RealSubject extends Subject {@Overridepublic void requestA() {// TODO Auto-generated method stubSystem.out.println("真實的請求A ");}@Overridepublic void requestB() {// TODO Auto-generated method stubSystem.out.println("真實的請求B");}@Overridepublic void requestC() {// TODO Auto-generated method stubSystem.out.println("真實的請求C ");}}

    代理主題

    package Proxy;public class Proxy extends Subject{RealSubject Rs;public void requestA() {if(Rs==null)Rs=new RealSubject();Rs.requestA();};public void requestB() {if(Rs==null)Rs=new RealSubject();Rs.requestC();};public void requestC() {if(Rs==null)Rs=new RealSubject();Rs.requestC();}; }

    客戶端

    package Proxy;public class Client {public static void main(String[] args) {Proxy proxy =new Proxy();proxy.requestA();proxy.requestB();proxy.requestC();} }

    總結

    以上是生活随笔為你收集整理的『设计模式』小老弟你猜不透我?-- 代理模式的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 麻豆私人影院 | 国产又黄又粗又猛又爽 | 久久久久久久香蕉 | 影音先锋制服丝袜 | 制服丝袜一区二区三区 | 男人的天堂成人 | 久久国产精品二区 | 被黑人猛躁10次高潮视频 | 日韩精品观看 | 欧美色拍 | 91精品婷婷国产综合久久竹菊 | 日本va欧美va精品发布 | 在线视频一区二区 | 国产精品天堂 | 免费萌白酱国产一区二区三区 | 日日摸夜夜添夜夜添高潮喷水 | 国产精品毛片久久久 | 人人看超碰 | 国产一区二区三区免费观看视频 | 91精品视频免费看 | 精品国产一区二区三区性色av | 成人少妇影院yyyy | 久久爰 | 国产视频一区二区在线播放 | 国产黄网站 | 国产精品无码av在线播放 | 亚洲第一色站 | 大尺度做爰啪啪床戏 | 欧美午夜精品理论片 | 欧美韩日一区二区 | 日韩五码 | 久久久久久人妻一区二区三区 | 国产三区在线成人av | 玖操| 亚洲男女激情 | japanese国产在线观看 | 伊人婷婷久久 | 国产成人无码a区在线观看视频 | 女儿朋友 | 日本三级免费看 | 国产女人18毛片水18精品 | 欧美青草视频 | 神马久久av | 欧美大片免费观看 | 强伦人妻一区二区三区 | 九色porn蝌蚪| av中文字幕在线看 | 一级高清毛片 | 亚洲精品一区二区三区蜜桃久 | 日韩一级二级视频 | 色av综合网 | 任你操精品 | 嫩草影院黄色 | www.黄色片.com | 一区二区三区四区精品 | 国产乱妇乱子 | 小sao货大ji巴cao死你 | 久久精品国产清自在天天线 | 亚欧洲乱码视频 | 国产一区二区三区四区五区六区 | 美丽姑娘免费观看在线观看 | 在线中文字幕第一页 | 黄色一级小视频 | 亚洲第5页| 欧美高清性 | 影音先锋中文字幕一区二区 | 天堂无乱码 | 国产欧美成人 | 日本特级黄色录像 | 日韩精品综合 | 久久靖品 | 欧美成人一区二区三区片免费 | www青青草 | wwwww国产| 国产1区2区 | 国产乱论 | 97夜夜 | 午夜av导航 | av中文字幕网 | 亚洲熟女乱色一区二区三区久久久 | 久久人人艹 | 成人在线观看免费网站 | 欧美日韩精品在线观看视频 | 欧美色爽 | wwwwxxxx欧美 | 97超碰站 | 伊人成人22| 国产精品久久久国产盗摄 | av在线网页 | 91超薄肉色丝袜交足高跟凉鞋 | 国产综合欧美 | 欧美激情视频一区 | 久久四色 | 加勒比一区在线 | 特黄aaaaaaa片免费视频 | 久久久久久久久久久久久女国产乱 | 国产一级自拍 | 三级网站国产 | 精品在线91 |