《深入淺出設計模式》筆記第二章 觀察者模式

2021-10-08 17:13:31 字數 1189 閱讀 2998

需要建立乙個應用如下:

weatherdata類:

錯誤示範:

public

class

weatherdata

}

將觀察者模式比作報紙和雜誌的訂閱:

報社的業務就是出版報紙

向某家報社訂閱報紙,只要他們有新報紙出版,就會給你送來。只要你是他們的訂戶,你就會一直收到新報紙

當你不想再看報紙的時候,取消訂閱,他們就不會再送新報紙來

只要報社還在運營,就會一直有人(或者單位)向他們訂閱報紙或取消訂閱報紙

觀察者模式特性:

主題物件管理某些資料

當主題內的資料改變就會通知觀察者

一旦資料改變,新的資料會以某種形式送到觀察者手上

觀察者已經訂閱(註冊)主題以便在主題資料改變時能收到更新

不是觀察者的物件,在主題資料發生改變時不會收到通知

觀察者模式定義了物件之間的一對多依賴,這樣以來,當乙個物件改變狀態時,它的所有依賴者都會收到通知並自動更新。

觀察者模式類圖:

觀察者模式提供了一種物件設計,讓主題和觀察者之間松耦合。

設計原則:為了互動物件之間的松耦合設計而努力。

松耦合的設計之所以能讓我們建立有彈性的oo系統,能夠應對變化,是因為物件之間的相互依賴降到了最低。

應用了觀察者模式的應用類圖:

計之所以能讓我們建立有彈性的oo系統,能夠應對變化,是因為物件之間的相互依賴降到了最低。**

應用了觀察者模式的應用類圖:

深入淺出mybatis 學習筆記 第二章

第二章 mybatis 入門 mybatis開發幫助文件 mybatis spring開發幫助文件 開啟mybatis 3.5.2.zip可以看到下圖的目錄結構,其中mybatis 3.5.2使我們專案開發整合mybatis需要引入的依賴jar包,lib資料夾底下的jar包是mybatis原始碼需要...

複習C 之《深入淺出MFC》第二章

設定靜態資料成員初始化時,不受任何訪問許可權的束縛。每個類中,不論有多少個虛函式,都只有乙個vptr指向虛函式表。類的定義也存在記憶體對齊問題,且sizeof不計入static變數。includeusing namespace std class a class b int main 以上執行答案是...

深入淺出設計模式(二) 工廠模式

簡單工廠模式 factory pattern 又稱為靜態工廠方法 static factory method 它屬於建立型模式。在簡單工廠模式中,可以根據引數的不同返回不同類的例項。簡單工廠模式專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。比如有乙個電腦商,目前生產聯想電腦...