C 設計模式 觀察者模式

2021-07-09 09:16:53 字數 1298 閱讀 7507

「觀察者模式」也可以稱為通知者模式,訂閱-發布模式、模型-檢視模式

大致概念:乙個主題(theme),多個觀察者(observer)  收聽它。

就好比 春節聯歡晚會 (theme) ,全國觀眾(observer)**現場直播。

那麼我們怎樣看直播呢?沒有電視你看的成嗎?有電視,但是沒有全國直播,你看的成嗎?

好了,這樣說吧!  你作為乙個觀眾,想看電視,家裡安的都有"鍋"吧,我指的是「數碼電視村村通」。而且每年要交200塊錢,是不?各個地方交的錢不一樣,不管一樣還是不一樣,農村人民嘛,如果不交錢,我們的電視收不到訊號,就看不成電視節目。

我們交錢的這個過程就是訂閱的過程 ,到春節了,我們都能準時的收看 春節聯歡晚會,說明他們給我們發布這個資訊,發布直播了,這就是發布過程。

從這裡展開分析:

主題(subject):

觀察者(observer):

看看在主函式中的**:

執行結果:

上面的內容我不想做過多的解釋,這裡涉及到c++的基本知識,因為過多的敘述,在這裡寫文章會花費很多的時間,由於我思考問題時,當我考慮的面不夠的時候,以後的文章我會新增上還不完善的思路。

python 設計模式 觀察者 觀察者設計模式

在觀察者設計模式這種模式中,物件被表示為等待事件觸發的觀察者。一旦發生指定的事件,觀察者就會關注該主體。當事件發生時,主體告訴觀察者它已經發生。以下uml圖表示觀察者模式 如何實現觀察者模式?現在讓我們來看看如何實現觀察者模式。參考以下實現 import threading import time ...

C 設計模式 觀察者模式

二.實現 比如熱水器在燒水的過程中,當水溫即將燒開時,會發出報警的聲音,顯示器上會出現溫度監控 public inte ce iobserver iobserverable介面 public inte ce iobservable 抽象基類 public abstract class subject...

C 設計模式 觀察者模式

1 觀察者模式定義 定義物件之間的一種一對多依賴關係,使得每當乙個物件狀態發生改變時,其相關依賴物件都得到通知並被自動更新。屬於物件行為模式。2 觀察者模式 1 目標類 subject 指的是被觀察的物件,定義乙個觀察者的集合。乙個觀察目標可以被多個觀察者觀察。目標提供一系列方法來增加和刪除觀察者物...