【設計模式】學習進度
阿新 • • 發佈:2017-06-18
包含 creat rod eth 什麽 method 觀察 不同 是什麽
1、策略模式:定義了算法族,分別封裝起來,讓它們之間可以互相替換,此模式讓算法的變化獨立於使用算法的客戶。
eg 鴨子
2、觀察者模式:定義了對象之間的一對多依賴,這樣一來,當一個對象改變狀態時,它的所有依賴者都會收到通知並自動更新。
eg 氣象臺
3、裝飾對象:動態地將責任附加到對象上。若要擴展功能,裝飾者提供了比繼承更有彈性的替代方案。
裝飾者和被裝飾者具有共同的超類。
eg starbuzz
4、工廠模式
所有工廠模式都用來封裝對象的創建。
(1)簡單工廠:只是把具體制造不同種類pizza的過程放到工廠裏。
(2)工廠方法模式(Factory Method):定義了一個創建對象的接口,但由子類決定要實例化的類是哪一個。工廠方法讓類把實例化推遲到子類。
通過讓子類決定該創建的對象是什麽,來達到將對象創建的過程封裝的目的。
eg 不同地方做不同地方特色口味的pizza
創建者Creator:通常包含依賴子抽象產品的代碼,而抽象產品由子類制造,創建者不需要真的知道在制造哪種具體產品。
產品類Product
產品類和創建者類平行。
(3)抽象工廠模式:提供一個接口,用於創建相關或依賴對象的家族,而不需要明確指定具體類。
每一個具體工廠都能生產一個產品家族。客戶創建產品時,只需要使用某一個具體工廠,而不需實例化任何產品對象。
eg 不同地區有不同的工廠來制造不同的調料(調料包括很多不同種類,也就是產品家族)
5、單件模式:確保一個類只有一個實例,並提供一個全局訪問點。
【設計模式】學習進度