設計模式 行為型設計模式 1 責任鏈模式(php)

2021-10-10 09:30:30 字數 431 閱讀 3563

行為型設計模式

責任鏈模式

責任鏈模式(chain of responsibility pattern)屬於行為型模式之一,將不同的物件劃分為不同的職責,並將這些物件組成一條鏈,讓每乙個物件都能接受、傳遞請求來共同完成任務,處於鏈條中不同位置的物件根據特定條件完成自己的職責。

具體的處理者

實現了抽象處理者定義的operation方法,具體的處理者接受到請求後,可以選擇處理此請求或將請求傳遞給下乙個引用。具體的處理者持有下乙個處理者的引用,如果業務需要,當前具體的處理者可以訪問下乙個處理者

1、有多個物件可以處理同乙個請求,具體哪個物件處理該請求由執行時的條件確定

2、在不明確指定接收者的情況下,需要向多個物件中的乙個提交此請求。

3、可動態的指定一組物件處理請求

1、系統效能收到一定影響,鏈式結構複雜,除錯時可能出現迴圈呼叫

設計模式 行為型 責任鏈模式

從擊鼓傳花談起 擊鼓傳花是一種熱鬧而又緊張的飲酒遊戲。在酒宴上賓客依次坐定位置,由一人擊鼓,擊鼓的地方與傳花的地方是分開的,以示公正。開始擊鼓時,花束就開始依次傳遞,鼓聲一落,假如花束在某人手中,則該人就得飲酒。擊鼓傳花的類圖結構如下 如果用乙個物件系統描述賈府,那麼賈母 賈赦 賈政 賈寶玉和賈環等...

設計模式 行為型 責任鏈模式

責任鏈 chain of responsibility 模式為請求建立了乙個接收者物件的鏈。這種模式給予請求的型別,對請求的傳送者和接收者進行解耦。這種型別的設計模式屬於行為型模式。使用場景 乙個請求物件需要多種任務的處理,通過鏈式傳播物件的場景。優點1.職責鏈對於客戶請求是透明的 2.鏈 將請求的...

行為型設計模式之責任鏈模式

責任鏈模式是一種鏈式結構,就是由乙個個節點首尾相接串起來的結構,具有很好的靈活性,將每乙個節點看作是乙個物件,每乙個物件擁有不同的處理邏輯,將乙個請求從鏈式的首端發出,沿著鏈的路徑依此傳遞每乙個節點物件,直到有物件處理這個請求為止,我們將這樣一種模式稱為責任鏈模式。使多個物件都有機會處理請求,從而避...