一、總括
話說設計模式:每一種設計模式都描述了乙個我們周圍不斷重**生的問題以及解決方案的核心,使用涉及模式可以避免**的重複勞動。
設計模式的主要目標:提供**的可維護性和可讀性。
設計模式的原則: 開閉原則(擴充套件開放、修改關閉),依賴倒轉(依賴抽象,不依賴具體),黎克特制代換原則(子類必須能替換父類的每一種情況)。
設計模式分類:建立模式(5)、結構模式(7)、行為模式(11)
二、 建立模式:(抽象了物件的例項化過程)
1. abstract factory(抽象工廠模式):針對產品族,有n個產品族在抽象工廠類中就應該有n個建立方法;乙個具體工廠類能建立多個具體產品類。
2. factory method(工廠方法):
工廠方法模式的意義是定義乙個建立產品物件的工廠介面,將實際建立工作推遲到子類當中;
乙個抽象產品可以有多個具體的產品,但是乙個具體的建立類只能建立乙個產品;乙個具體工廠類只能建立乙個具體產品類;
2.1 簡單工廠模式
當乙個模組只需要乙個工工廠類時,我們可以將抽象工廠類kill掉,然後將具體工廠類中製造產品的方法前面加static關鍵字,則,工廠方法模式就變為了簡單工廠模式。
該模式是工廠方法模式的弱化,因為簡單,所以稱為簡單工廠模式(****** factory pattern),也叫做靜態工廠模式。\
在實際專案中,採用該方法的案例還是比較多的,其缺點是工廠類的擴充套件比較困難,不符合開閉原則,但它仍然是乙個非常實用的設計模式。
3. singleton(單例):保證乙個類僅有乙個例項並提供它的全域性訪問點。
應用場景:在資源共享情況下,避免資源操作導致的失誤 或者損耗,如資源管理器、檔案系統、資料庫連線、**站等。
4. builder(建立者模式):將乙個複雜物件的建立與它的表示分離,使得同樣的構建過程建立不同的表示。
5. prototype(原型):用原型例項指定建立物件的型別,並他通過拷貝這些原型建立新的物件。
三、五種建立模式例項圖
設計模式 建立模式
我們按照模式所關心的主要問題可以把模式大致分為三類 1.建立模式 此類模式 主要關注物件的產生因此我們把它們分為一類 2.結構模式 此類模式主要關心類和物件的 組合 3.行為模式 刻畫了類和物件交換及分配職責的方式 建立模式主要包括 單例模式,工廠模式,建造者模式,原型模式,生成器模式。結構模式主要...
設計模式之建立模式Builder
1.概念 將乙個複雜物件的構造與它的表示分離,使同樣的構建 過程可以建立不同的表示,這樣的設計模式被稱為建造者模式。關鍵點1 builder 為建立乙個產品物件的各個部件指定抽象介面。2 concretebuilder 實現builder的介面以構造和裝配該產品的各個部件,定義並明確它所建立的表示,...
設計模式之建立模式導論
設計模式總共有三大種型別,分別是建立型,行為型及結構型。今天我就對建立型的模式做乙個初步的總結。建立型設計模式都有什麼?建立型設計模式包括 工廠三兄弟 即簡單工廠模式,工廠模式,抽象工廠模式。原型模式 單例模式及建造者模式共6種 各設計模式簡介 一 原型模式 原型模式就是通過命名空間中提前設定乙個i...