observer :主要包含2個物件
1.subject 被監視者 ,監察物件,必須包含乙個監察著感興趣的東西。
2.observer 監視者, 負責監視subject物件, 當subject物件的狀態發生改變會告知 observer 從而採取相應的方法。
observer 是一種松耦合的設計模式,為了定義物件之間的一對多的依賴關係,以便乙個物件的狀態發生改變,其被依賴的物件會被自動告知並更新。
參考乙個熱水器的例子。
熱水器負責燒水,警報器負責警報,顯示器負責顯示溫度。
那麼熱水器就是作為被監視著,警報器和顯示器對其屬性 溫度 感興趣,當溫度達到95度開始報警,顯示器顯示溫度。
整個事情的發生順序為:
1.註冊:警報器和顯示器告知熱水器對其溫度感興趣。
2.引用:熱水器對警報器和顯示器產生引用
3.執行:當溫度達到一定值時,熱水器呼叫警報器和顯示器的警報方法和顯示方法
namespace@delegate
}public
class
heater}}
}}
public
class display //
顯示器度
",param);}}
public
class
alarm
度了:", param);}}
}
C Observer設計模式
observer還是比較常見的東西,這裡我們主要介紹c observer設計模式,包括介紹subject 監視物件和observer 監視者等方面。假設我們有個高檔的熱水器,我們給它通上電,當水溫超過95度的時候 1 揚聲器會開始發出語音,告訴你水的溫度 2 液晶屏也會改變水溫的顯示,來提示水已經快...
C Observer設計模式(委託 事件)
observer設計模式中主要包括如下兩類物件 subject 監視物件,它往往包含著其他物件所感興趣的內容。在本範例中,熱水器就是乙個監視物件,它包含的其他物件所感興趣的內容,就是temprature欄位,當這個欄位的值快到100時,會不斷把資料發給監視它的物件。observer 監視者,它監視s...
設計模式 設計模式
物件導向程式設計 oop 的基本概念有 封裝,抽象,繼承,多型等,如何開發出可復用的物件導向軟體一直困擾著軟體開發人員。可復用的物件導向技術包括類的繼承,物件的組合和引數化型別 generic gof的巨著 設計模式 總結出可復用的物件導向的23個設計模式,並且歸類成 建立型模式,結構型模式和行為型...