head first 设计模式 java_吐血整理:Head First设计模式大全
1.策略模式:
鏈接:http://www.imooc.com/article/11475
題例:鴨子
原則:
1:找出應用中可能需要變化之處,把它們獨立起來,不要和那些不需要變化。
2:針對接口編程,而不是針對實現編程。
3:多用組合,少用繼承。
策略模式定義了算法族,分別封裝起來,讓他們之間可以互相替換, 此模式讓算法的變化獨立于使用算法的客戶。
2.觀察者模式:
鏈接:http://www.imooc.com/article/11579
題例:氣象檢測應用
原則:
4:為了交互對象之間松耦合設計而努力。
觀察者模式 定義了對象之間的一對多依賴,這樣一來,當一個對象改變狀態時,它的所有依賴者都會受到通知并自動更新。
3.裝飾者模式:
鏈接:http://www.imooc.com/article/11631
題例:星巴茲咖啡連鎖店
原則:
5:類應該對擴展開放,對修改關閉。(開放-關閉原則)
裝飾者模式動態地將責任附加到對象上。若要擴展功能,裝飾者提供了比繼承更有彈性的替代方案。
4.工廠模式:
鏈接:http://www.imooc.com/article/11675
題例:披薩店
原則:
6:要依賴抽象,不要依賴具體類。(依賴倒置原則)
抽象工廠模式提供一個接口,用于創建相關或依賴對象的家族,而不需要明確指定具體類。
5.單件模式:
鏈接:http://www.imooc.com/article/11735
題例:無
原則:無
單件模式確保一個類只有一個實例,并提供一個全局訪問點。
6.命令模式:
鏈接:http://www.imooc.com/article/11923
題例:電器自動化
原則:無
命令模式將“請求”封裝成對象,一邊使用不同的請求、隊列或者日志來來參數化其他對象。命令模式也支持可撤銷的操作。
7.適配器模式和外觀模式:
鏈接:http://www.imooc.com/article/11993
題例:第一章的鴨子
原則:
7:只和你的密友談話。(最少知識原則)
適配器模式將一個類的接口,轉換成客戶期望的另一個接口,適配器讓原本接口不兼容的類可以合作無間。
外觀模式提供了一個統一的接口,用來訪問自系統中的一群接口。外觀定義了一個高層接口,讓子系統更容易使用。
8.模板方法模式:
鏈接:http://www.imooc.com/article/12037
題例:星巴茲咖啡沖泡
原則:
8:別調用我們,我們會調用你。(好萊塢原則)
模板方法模式在一個方法中定義一個算法的骨架,而將一些步驟延遲到子類中,模板方法使得子類可以在不改變算法結構的情況下,重新定義算法中的某些步驟。
9.迭代器與組合模式:
鏈接:http://www.imooc.com/article/12103
題例:餐廳和煎餅屋合并
原則:
9:一個類只有一個引起變化的原因。(單一責任原則)
迭代器模式提供一種方法順序訪問一個聚合對象中的各個元素,而又不暴露其內部的表示。
組合模式允許你將對象組合成樹形節后來表現“整體/部分”層次結構。組合能讓客戶以一致的方式處理個別對象以及對象組合。
總結
以上是生活随笔為你收集整理的head first 设计模式 java_吐血整理:Head First设计模式大全的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Tahoma Arial Verdana
- 下一篇: asp.net ajax控件工具集 Au