《Head First設計模式》 讀書筆記02 觀察者模式 Observer 觀察者模式 觀察者模式定義了對象之間的一對多依賴,這樣一來,當一個對象改變狀態時,它的所有依賴者都會收到通知並自動更新。 主題(被觀察者)通過一個共同的接口來更新觀察者。 有多個觀察者時,不可以依賴 ...
一 策略模式的定義 策略模式定義了算法族,分別封裝起來,讓它們之間可以互換替換,此模式讓算法的變化獨立使用算法的客戶。 二 使用策略模式的一個例子 . 引出問題 某公司做了一套模擬鴨子的游戲:該游戲會出現各種鴨子,他們具有相似點 都會叫,會游泳,會表達自己的特征 和異同點 每種展示自己的特征是不同的方法 ,很容易想到使用OO技術,定義個鴨子超類,讓其他的鴨子類來繼承鴨子超類。 由於異同點都會展示自 ...
2013-09-28 21:53 3 1814 推薦指數:
《Head First設計模式》 讀書筆記02 觀察者模式 Observer 觀察者模式 觀察者模式定義了對象之間的一對多依賴,這樣一來,當一個對象改變狀態時,它的所有依賴者都會收到通知並自動更新。 主題(被觀察者)通過一個共同的接口來更新觀察者。 有多個觀察者時,不可以依賴 ...
作者:Grey 原文地址:http://www.cnblogs.com/greyzeng/p/5915202.html 模式名稱 策略模式(Strategy Pattern) 需求 模擬鴨子游戲,游戲中會出現各種鴨子,一邊游泳戲水,一邊呱呱叫。我們應該如何設計這個鴨子 ...
1、繼承帶來的擴展和復用問題 繼承作為面向對象的三大要素(封裝、繼承、多態)之一為什么會帶來問題,問題如何解決然后形成一種設計模式,head frist設計模式書中以鴨子作為例子講解什么情況下繼承的方式會帶來問題。首先有各種各樣的鴨子,那么自然想到各種鴨子繼承自一個父類:父類為Duck,現有 ...
系列文章 [Head First設計模式]山西面館中的設計模式——裝飾者模式 [Head First設計模式]山西面館中的設計模式——觀察者模式 [Head First設計模式]山西面館中的設計模式——建造者模式 [Head First設計模式]餃子館(冬至)中 ...
首先我們需要知道策略模式與狀態模式是如此的相似,就猶如一對雙胞胎一樣。只不過狀態模式是通過改變對象內部的狀態來幫助對象控制自己的行為,而策略模式則是圍繞可以互換的算法來創建成功業務的。兩者都可用於解決同一個問題:帶有大量的if..else…等條件判斷語句來進行選擇的(小弟初學,不知 ...
關於設計模式的思想: 1.設計模式的作用,就是幫助我們編寫可復用的類。通過設計,使代碼解耦,響應變化。 2.不要使用具體類來編程,要優先使用抽象類和接口來編程 3.良好的實際模式,可以減少系統的復雜性,提高系統易用性 4.定義抽象類,抽象重要功能(API),把“定義”和“實現”分離 ...
設計模式這是第三遍看了,每工作兩年回頭看都會有新的一些感受,最近時間比較寬裕把基礎的知識復習復習鞏固鞏固。 基礎知識 讀設計模式之前要有一些UML的基礎知識 虛線箭頭指向依賴; 實線箭頭指向關聯; 虛線三角指向接口; 實線三角指向父類; 空心菱形能分離而獨立存在,是聚合; 實心菱形精密關聯 ...
觀察者模式:定義了對象之間的一對多依賴,這樣一來,當一個對象改變狀態時,它的所有依賴者都會收到通知並自動更新(是不是感覺很神奇!!!)。 小A公司接了一個為氣象站開發Internet氣象觀測站的項目。項目開發要求:由氣象站提供一個WeatherData對象負責追蹤目前的天氣狀況(溫度 ...