設計模式學習筆記

2021-08-07 15:30:32 字數 832 閱讀 6813

策略模式:

用於情景:

鴨子行為,鴨子型別可以繼承,鴨子行為變成介面,各種各樣的行為去實現介面,然後在具體類中呼叫行為介面具體實現子類。

遊戲玩家**變換。

觀察者模式:

用於場景

主題-----觀察者

天氣預報資料展示,當氣象站收集到新的資料時,像各個面板推送最新的資料,面板顯示最新資料。

裝飾者模式:

用於場景

飲料加調料

調料將飲料一層一層包裝。

工廠模式

簡單工廠模式:直接建立乙個工廠,使用時從工廠拿。

工廠模式:pizza經典例子

應用:一般在提供api介面可以使用,使用輕易反射實現。

單例模式:

用於某些只有乙個物件時。

命令模式:

遙控器的經典例子,操控各個電器的開關。

介面卡模式:

2插口變3插口的經典例子

外觀模式:

為了更方便的使用,使用乙個類對各個類呼叫,有點像遙控器,家庭影院經典例子。

模板模式:

其實就是把繼承抽象類,抽象類實現了部分共同的功能,剩下的抽象方法由子類完成,還有就是一般模板有乙個實現了的空的方法,並丟出不支援該操作的異常,子類可以實現也可以不實現,稱為鉤子

迭代器模式:

餐廳多張選單的經典例子,每張選單都有乙個自己的迭代器,服務員只需要獲取選單迭代器就可以列印,但這不適合有2級選單的情況。

組合模式:

同樣是餐廳多張餐單,但選單下還有2級選單。建立乙個抽象類menucomponent,所有餐廳的選單都繼承,並且有自己的列印方法,在服務員這只要執行列印就可以,迭代放在自己的列印方法中。

設計模式學習筆記

1.簡單工廠模式 2.策略模式 3.單一職責原則 就乙個類而言,應該僅有乙個引起它變化的原因 4.開放 封閉原則 就是對軟體實體 類,模組,函式等 應該可以擴充套件,但是不可以修改,無論模組是多麼的 封閉 都會存在一些無法對之的封閉的變化。既然不可能完全封閉,設計人員就必須對他設計的模組應該對哪種變...

設計模式學習筆記

1.單例模式 限制只產生乙個物件。if object null 2.簡單工廠模式 通過乙個工廠類根據條件來建立各種各樣的類。3.工廠方法模式 對工廠類進行改造分解,工廠類公升級為介面,一對一建立工廠類 針對要生產的類 實現工廠介面。問題來了 簡單工廠和工廠方法有什麼優劣?4.迭代器模式 iterat...

IT學習筆記 設計模式

1.學會看uml類圖 在 動物 矩形框,它就代表乙個類 class 類圖分三層,第一層顯示類的名稱,如果是抽象類,則就用斜體顯示。第二層是類的特性,通常就是欄位和屬性。第三層是類的操作,通常是方法或行為。注意前面的符號,表示public,表示private,表示protected。上圖中的左下角的 ...