【EventBus】发布-订阅模式 ( EventBus 组成模块 | 观察者模式 )
生活随笔
收集整理的這篇文章主要介紹了
【EventBus】发布-订阅模式 ( EventBus 组成模块 | 观察者模式 )
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一、發布-訂閱模式
- 二、EventBus 組成模塊
- 三、觀察者模式
一、發布-訂閱模式
發布訂閱模式 :
- 發布者 Publisher : 狀態改變時 , 向 消息中心 發送事件 ;
- 訂閱者 Subscriber : 到 消息中心 訂閱自己關心的事件 ;
- 消息中心 : 負責維護一個 消息隊列 , 根據 消息類型 將 消息 轉發給 對應的 訂閱者 ;
二、EventBus 組成模塊
EventBus 中有以下幾個組成部分 :
- Publisher 發布者 : 調用 post 方法發布事件 ;
- EventBus 事件總線 : 該模塊接收 發布者發布的事件 , 將事件轉發給對應的 Subscriber 訂閱者 ;
- Subscriber 訂閱者 : 使用 @Subscriber 注解修飾 , 接收發布的事件 , 并處理事件 ;
- Event 事件 : 自定義類型 , 通過不同的事件類型 , 確定事件應該發送給哪個訂閱者 ;
EventBus 是 發布 - 訂閱 模式 的事件總線框架 , 事件的 發布者 與 訂閱者 實現了解耦 , 簡化了 Android 中各個組件之間的通信 ;
三、觀察者模式
觀察者模式中 , 目標對象 ( Subject / 被觀察者 ) 中 , 維護了多個 觀察者 , 觀察者需要注冊到 目標對象 中 , 如果目標對象發生改變 , 通知所有的觀察者 , 觀察者對象 收到通知后 , 進行相關處理 ;
上述結構中 , 觀察者 與 目標對象 ( 被觀察者 ) 是有 耦合性 的 ;
發布 - 訂閱 模式 中 , 發布者 和 訂閱者 是完全解耦的 ;
發布 - 訂閱 模式 比 觀察者模式 多了一個消息中心 , 這個 消息中心 是 發布者 和 訂閱者 之間解耦的關鍵 ;
總結
以上是生活随笔為你收集整理的【EventBus】发布-订阅模式 ( EventBus 组成模块 | 观察者模式 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【EventBus】Subscribe
- 下一篇: 【EventBus】发布-订阅模式 (