五大建立型設計模式的注意事項:
1.單例(singleton)
建構函式private或protected,防止外部例項化;
雙層鎖定例項化,防止多執行緒的多個例項化;
類要sealed,防止被繼承後派生新增例項;
餓漢、懶漢兩種型別,各有千秋;
2.原型(prototype)
clone 淺拷貝,複製值型別,不複製引用型別;
copy 深拷貝,值型別與引用型別都做複製;
在.net中實現icloneable介面,用this.memberwiseclone()實現淺拷貝;
3.建造者(builder)
各細節流程不同,但裝配方式一致時,可以使用建造者模式以規範流程;
4.工廠方法(factorymethod)
工廠類中包含了必要的邏輯判斷,根據客戶端的選擇條件動態例項化相關的類,對於客戶端來說,去除了與具體產品的依賴。
工廠方法使用新增新功能時,只要修改客戶端**。
5.抽象工廠(abstractfactory)
與簡單工廠及反射配合,可以使抽象工廠的程式更加簡潔完美;
設計模式學習總結 建立型模式
五大建立型設計模式的注意事項 1.單例 singleton 建構函式private或protected,防止外部例項化 雙層鎖定例項化,防止多執行緒的多個例項化 類要sealed,防止被繼承後派生新增例項 餓漢 懶漢兩種型別,各有千秋 2.原型 prototype clone 淺拷貝,複製值型別,不...
設計模式學習總結 建立型模式
五大建立型設計模式的注意事項 1.單例 singleton 建構函式private或protected,防止外部例項化 雙層鎖定例項化,防止多執行緒的多個例項化 類要sealed,防止被繼承後派生新增例項 餓漢 懶漢兩種型別,各有千秋 2.原型 prototype clone 淺拷貝,複製值型別,不...
建立型模式學習總結 設計模式學習筆記
一 建立型模式 1 建立型模式抽象了例項化的過程 將物件的建立,組合,表示獨立於系統。乙個類建立型模式使用繼承來改變被例項化的物件,乙個物件的建立型模式是將例項化委託給另乙個物件,以避免硬編碼 hard coding 帶來了的不可擴充套件和不能靈活應對變化,而來降低物件之間關係的重新更改或者組合或者...