設計模式學習(二) Proxy模式

2021-04-14 03:04:40 字數 1062 閱讀 9547

proxy模式:

意圖:為其他物件提供一種**以控制目標物件的訪問。此模式的目的:由於直接訪問控制的不便是而設定的一控制**。

uml結構圖:

proxy

模式根據種類不同,效果也不盡相同: 1

.遠端(

remote

)**:為乙個位於不同的位址空間的物件提供乙個局域代表物件。這個不同的位址空間可以是在本機器中,也可是在另一台機器中。遠端**又叫做大使(

ambassador 2

.虛擬(

virtual

)**:根據需要建立乙個資源消耗較大的物件,使得此物件只在需要時才會被真正建立。使用虛擬**模式的好處就是**物件可以在必要的時候才將被**的物件載入;**可以對載入的過程加以必要的優化。當乙個模組的載入十分耗費資源的情況下,虛擬**的好處就非常明顯。 3

.copy-on-write

**:虛擬**的一種。把複製(轉殖)拖延到只有在客戶端需要時,才真正採取行動。 4

.保護(

protect or access

)**:控制對乙個物件的訪問,如果需要,可以給不同的使用者提供不同級別的使用許可權。保護**的好處是它可以在執行時間對使用者的有關許可權進行檢查,然後在核實後決定將呼叫傳遞給被**的物件。 5

.cache

**:為某乙個目標操作的結果提供臨時的儲存空間,以便多個客戶端可以共享這些結果。 6

.防火牆(

firewall

)**:保護目標,不讓惡意使用者接近。 7

.同步化(

synchronization

)**:使幾個使用者能夠同時使用乙個物件而沒有衝突。 8

.智慧型引用(

**art reference

)**:當乙個物件被引用時,提供一些額外的操作,比如將對此物件呼叫的次數記錄下來等。

proxy模式與facade模式的區別:

1。 facade模式是複雜介面的乙個子集,以方便使用為目的,而proxy模式可以**整個介面,以控制為目的。

設計模式 Proxy模式

作用 為其他物件提供一種 以控制對這個物件的訪問。uml結構圖 抽象基類 1 subject 定義了proxy和realsubject的公有介面,這樣就可以在任何需要使用到realsubject的地方都使用proxy.解析 proxy其實是基於這樣一種時常使用到的技術 某個物件直到它真正被使用到的時...

設計模式 Proxy模式

模式 1 什麼是 模式?模式 proxy 為其他物件提供一種 以控制對這個物件的訪問。dp 通俗的說就是指客戶端並不直接呼叫實際的物件,而是通過 物件,來間接呼叫實際的物件。2 實現原理 subject 可以是介面,也可以是抽象類 proxy 內部含有對真實物件realsubject的引用,負責對真...

設計模式之Proxy模式

proxy 模式給某乙個物件提供乙個 並由 物件控制對原物件的引用。模式的英文叫做proxy或surrogate,中文都可譯成 所謂 就是乙個人或者乙個機構代表另乙個人或者另乙個機構採取行動。在一些情況下,乙個客戶不想或者不能夠直接引用乙個物件,而 物件可以在客戶端和目標物件之間起到中介的作用。如果...