首先明確觀察者和被觀察者責任
被觀察者用來 存放誰來觀察他自己
觀察者則是 類似與控制反轉 來操作被觀察者存放的對象
過程 由觀察者來去把自己放入被觀察者數組
定義觀察者要被觸發的方法
最後由被觀察者來觸發方法
https://www.cnblogs.com/cc-freiheit/p/11356073.html
git代碼 觀察者模式
https://github.com/StoneSuilol/observeMode.git
發佈訂閱模式更靈活,是進階版的觀察者模式,指定對應分發。
-
觀察者模式維護單一事件對應多個依賴該事件的對象關係;
-
發佈訂閱維護多個事件(主題)及依賴各事件(主題)的對象之間的關係;
-
觀察者模式是目標對象直接觸發通知(全部通知),觀察對象被迫接收通知。發佈訂閱模式多了箇中間層(事件中心),由其去管理通知廣播(只通知訂閱對應事件的對象);
-
觀察者模式對象間依賴關係較強,發佈訂閱模式中對象之間實現真正的解耦。