23種設計模式

2022-02-01 00:10:34 字數 1756 閱讀 6238

1,簡單工廠模式

工廠模式

簡單工程模式的最大有點在於工廠類中包含了必要的邏輯判斷,根據客戶端的選擇條件動態例項化相關的類。對於客戶端來說,去除了與具體產品的依賴。

工程方法模式:定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類,工廠方法使乙個類的例項化延遲到其子類。

2,建造者模式:(書的uml模型感覺不對)

建造者模式:主要用於建立一些複雜的物件,這些物件內部構建間的建造順序通常是穩定的,但物件內部的構建通常面臨著複雜的變化。

3,原型模式:

原型模式:用原型例項指定建立物件的種類,並通過拷貝這些原型建立新的物件。

結構型模式:

介面卡模式:

介面卡模式:將乙個類的介面轉換成客戶希望的另外乙個介面。adapter模式使得原來由於介面不相容而不能一起工作的哪些類可以一起工作。

裝飾模式:(不熟)

裝飾模式:動態的給乙個物件新增一些額外的職責,就增加功能來說,裝飾模式比生成子類更為靈活。

橋接模式:(不熟)

橋接模式:將抽象部分與它的實現部分分離,使他們都可以獨立的變化。

組合模式;(不熟)

組合模式:將物件組合成樹形結構以表示「部分-整體」的層次結構。組合模式使得使用者對單個物件和組合物件的使用具有了一致性。

享元模式:

享元模式:運用共享技術有效的支援大量細粒度的物件。

**模式:

**模式:為其他物件提供一種**以控制對這個物件的訪問。

外觀模式:

外觀模式:為子系統中一組介面提供乙個一致的介面,此模式定義乙個高層介面,這個介面使得這一子系統更加容易使用。

行為型模式:

模板方法模式(已學會)

模板方法模式:定義乙個操作中演算法的骨架,而將一些步驟延遲到子類中。模板方法可以不改變乙個演算法的結構,即可重新定義改演算法的某些特定步驟。

觀察者模式:(委託要練習下)

觀察者模式:定義物件間的一種一對多的依賴關係,當乙個物件的狀態發生改變時,所有依賴於它的物件都得到通知並自動更新。

命令模式:(暫不理解)

命令模式:將請求封裝為乙個物件,從而使你可用不同的請求對客戶進行引數化;對請求排隊或記錄請求日誌,以及支援可撤銷的操作。

狀態模式:(消除大量分支結構)

狀態模式:當乙個物件的內在狀態改變時允許改變其行為,這個物件看起來像是改變了其類。

職責鏈模式:

職責鏈模式:使多個物件都有機會處理請求,從而避免請求的傳送者和接收者之間的耦合關係。將這個物件連線成一條鏈,並沿著這條鏈傳遞該請求,知道有乙個物件處理它為止。

行為型模式二

直譯器模式:

直譯器模式:定義乙個語言,定義它的文法的一種表示,並定義乙個直譯器,這個直譯器使用該標識來解釋語言的句子。

中介者模式:(看不懂)

中介者模式:用乙個中介物件來封裝一系列的物件互動。終結者使各物件不需要顯式地相互引用,從而使其耦合鬆散,而且可以獨立地改變他們之間的互動。

訪問者模式:(看不懂)

訪問者模式:標識乙個作用於某物件結構中的各元素的操作。它使你可以在不改變各元素的類的前提下定義作用於這些元素的新操作。

策略模式:

策略模式:它定義了演算法家族,分別封裝起來,讓他們之間可以互相替換,此模式讓演算法的變化,不會影響使用演算法的客戶。

備忘錄模式:

備忘錄模式:在不破壞封裝性的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態。這樣以後就可將該物件恢復到原先儲存的狀態。

迭代器模式:

迭代器模式:提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露該物件的內部標識。

設計模式 23種設計模式

一 軟體設計模式的概念 軟體設計模式 software design pattern 又稱設計模式,是一套被反覆使用 多數人知曉的 經過分類編目的 設計經驗的總結。它描述了在軟體設計過程中的一些不斷重 生的問題,以及該問題的解決方案。也就是說,它是解決特定問題的一系列套路,是前輩們的 設計經驗的總結...

23種設計模式

建立型 1.單件模式 singleton pattern 2.抽象工廠 abstract factory 3.建造者模式 builder 4.工廠方法模式 factory method 5.原型模式 prototype 結構型 6.介面卡模式 adapter pattern 7.橋接模式 bridg...

23種設計模式

設計模式 一書歸納出23種設計模式 1 建立型模式 前面講過,社會化的分工越來越細,自然在軟體設計方面也是如此,因此物件的建立和物件的使用分開也就成為了必然趨勢。因為物件的建立會消耗掉系統的很多資源,所以單獨對物件的建立進行研究,從而能夠高效地建立物件就是建立型模式要 的問題。這裡有6個具體的建立型...