1. 程式人生 > >圖解設計模式讀書筆記(十一)——Chain of Responsibility(責任鏈)模式

圖解設計模式讀書筆記(十一)——Chain of Responsibility(責任鏈)模式

看到這個模式,最先想到的就是okhttp跟Android的事件處理機制了。

使用場景:

當功能出現分層,層級之間相對獨立這種情況,可考慮使用責任鏈模式。

類關係圖:

Handler是一個抽象類,它擁有屬性next,型別是自身型別,並有處理請求但request方法。

具體的Handler實現類定義自身對事件的處理邏輯,如果自身處理不了,則將事件傳遞給next,由next去處理,以此類推。

優點:

弱化了發出請求的人和處理請求的人之間的關係,使得處理請求的人可作為複用的元件。

缺點:

比起直接找到能夠處理請求的人,責任鏈模式資料需要走更多的路,響應時間肯定就比較長了。