觀察者模式和發布訂閱模式的區別

2021-09-20 09:59:13 字數 253 閱讀 1091

兩者有什麼區別?一搜一大堆,一篇比一篇長,一篇比一篇專業。傻傻分不清楚。還是舉個例子吧。

觀察者模式:我辦了乙個補習班,學生想來我這學習,必須先報名(註冊)。收齊一幫學生,開始教學,學生們聽了我的課及時更新了自己的認知。我和學生們緊密相連。每個人我都認識。

後者比前者多了乙個類似中轉站的東西(姑且稱為「中臺」),省了我好多事。有學生不願意學了 ,直接找中颱退訂就好了,不用找我說。我發布的新課程也由中颱做廣播,不用我自己再乙個個通知,不會影響到我自己幹其他工作。

觀察者模式和發布 訂閱模式的區別

有這麼一段 經常會出現在 中 1 var pubsub 3function subscribe topic,fn 7topics topic push fn 8 9function publish topic,args 15 16return 20 測試 1 pubsub.subscribe tes...

觀察者模式和發布訂閱模式

參考 1 觀察者模式,定義物件間一種一對多的依賴關係,使得每當乙個物件改變狀態,則所有依賴於它 改變的狀態 的物件都會得到通知。2 發布訂閱模式,訂閱者把想訂閱的事件註冊到排程中心,當該事件觸發的時候,發布者發布該事件到排程中心 順帶上下文 由排程中心統一排程訂閱者曾經註冊到排程中心的處理 定義排程...

發布訂閱和觀察者模式的區別

有些人認為觀察者模式就是發布訂閱模式,實際上觀察者模式是包含了訂閱發布模式,發布訂閱模式只是觀察者模式中的一種。觀察者模式是觀察者和被觀察者之間的通訊,而發布訂閱模式中間增加了乙個中轉層,通過第三方來分發資訊。subject為被觀察者,subject中的狀態 state 改變,就通知 observe...