程式設計師 我終於知道什麼是觀察者模式了

2021-10-03 22:48:20 字數 1417 閱讀 3890

前面一篇千絕介紹了工廠模式,不知道各位看官老爺看的怎麼樣呢,這篇文章千絕將會介紹設計模式中的觀察者模式,這個設計模式呢,千絕認為還是比較簡單的,只要看官老爺們認真讀我這篇文章如果還不知道觀察者模式是什麼,以及如何寫乙個觀察者模式,那麼你們可以噴我了(qaq)。

觀察者模式(有時又被稱為發布-訂閱模式、模型-檢視模式、源-收聽者模式或從屬者模式)是軟體設計模式的一種。在此種模式中,乙個目標物件管理所有相依於它的觀察者物件,並且在它本身的狀態改變時主動發出通知。這通常透過呼叫各觀察者所提供的方法來實現。此種模式通常被用來實作事件處理系統。

千絕對這段定義的理解就是:乙個類管理著所有依賴於它的觀察者類,並且當它的狀態變化時會主動給這些依賴它的類發出通知。理解還是挺好理解的,如果不能理解上面的話,千絕會用生活當中的例子來給你們講解的。

這個時候千絕一想這不就是觀察者模式嗎,沒事交給我了。

定義乙個被觀察者介面

public

inte***ce

observerable

定義乙個觀察者介面

public

inte***ce

observer

定義作者類實現了observerable介面

public

class

author

implements

observerable

public

void

addobserver

(observer o)

public

void

removeobserver

(observer o)

}public

void

notifyobserver()

}}

定義讀者類實現observer介面

public

class

reader

implements

observer

public

void

update

(string message)

}

測試一下

總管更新了陳平安最新的一章,四個訂閱的讀者都能收到,後來讀者1覺得總管更新的太慢了就取消訂閱了,結果總管再更新的時候,讀者1就收不到了。

感謝各位看官老爺的收看。

下期預告,迭代器模式。

我是程式設計師

相比於寫 我更喜歡寫能自動產生 的生成器,和許多人一樣,我討厭寫重複的 這種重複包括字面的重複和結構的重複 還有思想的重複。在日常的開發過程中,一旦我發現一種需要經常使用的元素 類 結構 方法 我就將它整理出來,所謂整理主要是做這樣的工作 重構 最大限度降低這個元素與其它元素的耦合性 最大限度地擴充...

我是程式設計師

相比於寫 我更喜歡寫能自動產生 的生成器,和許多人一樣,我討厭寫重複的 這種重複包括字面的重複和結構的重複 還有思想的重複。在日常的開發過程中,一旦我發現一種需要經常使用的元素 類 結構 方法 我就將它整理出來,所謂整理主要是做這樣的工作 重構 最大限度降低這個元素與其它元素的耦合性 最大限度地擴充...

什麼是程式設計師

乙個大專學歷想做程式設計師的朋友和我的對話,很短,我覺得,至少能說明我的心情和對程式設計師職業理解的乙個側面。2008 07 28 12 11 37 卿飄飄 大哥現在還寫程式不?2008 07 28 12 12 51 青潤寫。2008 07 28 12 16 10 卿飄飄 哦 你覺得三十歲後還寫程式...