委派模式主要用於任務分發排程派遣。委派者是連線任務執行者和呼叫者媒介。既然媒介它必然需要包含所有執行者的引用物件,在根據呼叫者的輸入選擇適當的執行者去執行,委派和**模式中的靜態**有很多相似的地方,持有執行者的物件引用,具體業務都是執行者來執行。
整天的業務場景是乙個專案經理管理和兩個成員共同做乙個專案,然後客戶向專案經理提出需求,專案經理根據任務把事情委派給具體的成員完成。
public
inte***ce
project
public
class
liimplements
project
}public
class
zhang
implements
project
}
從剛才的例子可以看出來委派模式的優點在於封裝多個執行者做的事情,使呼叫者不用關心每個執行者是幹嘛的,我這個需求究竟該提給誰,只需要對接委派類就可以了。
委派模式有很多其他設計模式的影子,有點像**(包含被**的物件的引用)加策略(分裝演算法,輸入與對應執行者的對映關係)。
與**模式的區別主要是在業務的側重點不同。比如前面說了委派注重的是分發排程派遣,**的目的是通過**增強被**的功能,封裝一些公共的邏輯。舉個例子:古代的媒婆一般知道誰家的孩子什麼年齡,你說向他提出要求,讓他介紹女孩子給你認識,他會從自己的認知裡找個乙個和你要求最匹配的人,這就是委派模式。當你們相處的不錯,最後要求媒婆去提親了,這就是**,娶老婆的是你,但是操辦婚事的前前後後(對應**模式的前增強後增強等)。
設計模式學習(五)委派模式
委派模式是指兩個物件參與處理同乙個請求,接收請求的物件將請求委託給另乙個物件來處理。它的基本作用就是負責任務的排程和分派任務。跟 模式很像,但是 模式注重過程,而委派模式注重結果。委派模式主要用於消除程式中大量的if else 和switch語句。boss 類 public class boss l...
設計模式 委派模式
1.簡介 角色 受託人,委託人 社會上是平等關係 公司裡面 普通員工,專案經理 各自職責不一樣 專案經理 委託人 主要職責是安排任務 普通員工 受託人 執行任務 2.特點 a 類似與中介的功能 委託機制 b 持有被委託人的引用 c 不關心過程,只關心結果 可以分發給不同員工執行,結果可能不同 d 幹...
設計模式 委派模式
委派模式,委派模式是持有被委託人的引用。不關心過程,只關心結果。相當於乙個中間價起乙個調節和任務分發的乙個作用,就像我們是客戶找管理人員找乙個可以幫我做這件事的員工 下面我們用 實現 首先定義乙個員工介面 員工 public inte ce employee編寫實現,廚師和司機 public cla...