責任鏈模式原理:
示例專案:
購買請求決策專案
購買請求決策專案介紹
決策因素:**
決策級別:組長、部長、副總、總裁
傳統類圖結構:
責任鏈模式類圖:
責任鏈模式:如果有多個物件都有機會處理請求,責任鏈可使請求的傳送者和接收者解耦,請求沿著責任鏈傳遞,直到有乙個物件處理了它為止。
優點:將請求的傳送者和接收者解耦,使多個物件都有機會處理這個請求
可以簡化物件,因為它無須知道鏈的結構
可以動態地增加或刪減處理請求的鏈結構
缺點:請求從鏈的開頭進行遍歷,對效能有一定的損耗
並不保證請求一定被處理
責任鏈模式關鍵點:
責任鏈模式:如果有多個物件都有機會處理請求,責任鏈可使請求的傳送者和接收者解耦,請求沿著責任鏈傳遞,直到有乙個物件處理了它為止。
適用場合:
有多個物件可以處理乙個請求
不明確接收者的情況
有序、無序鏈,線型、樹形、環形鏈
責任鏈模式和狀態模式主要區別:
責任鏈模式注重請求的傳遞
狀態模式注重物件狀態的轉換
設計模式學習 責任鏈模式
責任鏈模式 使多個物件都有機會處理請求,從而避免了請求的傳送者和接受者之間的耦合關係,將這些物件連成一條鏈,並沿著這條鏈傳遞該請求,只到有物件處理他未止.使用場景 多個物件可以處理同乙個請求,但具體由哪個物件處理則在執行時動態覺得 在請求處理者不明確的情況下向對個物件中的乙個提交乙個請求 需要動態指...
學習設計模式 責任鏈模式
說明 使多個物件都有機會處理請求,從而避免請求的傳送者和接受者之間的耦合關係,將這個物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有乙個物件處理他為止。需求 請假審批 解決方式 a.定義乙個處理者抽象類,宣告處理方法,定義乙個處理者類,定義設定下個處理者的方法 b.分別定義處理者實現類 處理者實現類2...
設計模式 責任鏈模式學習
責任鏈模式,顧名思義,就是將需要實現的功能,拆分為各自專一的責任,組成一條責任鏈,來完成對資料的處理。先看下面一段demo 需要被處理的物件類 data public class user 責任處理器介面 public inte ce filter責任處理器的兩個介面 public class fi...