設計模式(2)

2021-08-07 01:27:09 字數 1146 閱讀 5295

用原型例項指定建立物件的種類,並且通過這些拷貝這些原型來實現建立新的物件。

注意:淺複製和深複製。

當我們要完成在某一細節層次一致的乙個過程或一系列步驟,但其個別步驟在更詳盡的層次上實現可能不同時,通常考慮用模板方法模式來處理。

當不變的行為和可變的行為在方法子類實現中混合在一起的時候,不變的行為就會在子類中重複出現。用模板方法模式把這些不變的行為搬到單一的地方。

迪公尺特法則(lod)也叫最少知識原則。

如果兩個類不必彼此直接通訊,那麼這兩個類就不應當發生直接的相互作用。如果其中乙個類需要呼叫另乙個類的某一方法的時候,可以通過第三者**這個呼叫。

強調了類之間的松耦合。

又叫門面模式。

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

又稱生成器模式。

將乙個複雜物件的構建與他的表示分離,使得同樣的構建過程可以建立不同的表示。

注:指揮者的createperson(personbuilder  pb)方法根據使用者傳的物件而建立不同的表示。

又叫發布-訂閱(publish/subscribe)模式,定義了一種一對多的依賴關係,讓多個觀察者物件同時監聽某一主題物件。這個主題物件在狀態發生變化時會通知所有觀察者物件,使他們能自動更新自己。

觀察者模式所做的工作是解除耦合,讓耦合的雙方都依賴於抽象,兒不是依賴於具體。從而使得一邊的變化不會影響另一邊的變化。    

設計模式 2

1.設計模式分類 建立型結構型 行為型範圍 類factory method adapter interpreter template method 物件abstract factory builder protype singleton adapter 物件 bridge composite dec...

設計模式(2)

工廠模式 定義了乙個建立物件的介面,但由子類決定要實現例項化的類是哪乙個,工廠方法讓類把例項化推遲到子類。1 所有的工廠都是用來封裝物件的建立。2 工廠方法使用繼承 把物件的建立委託給子類,子類實現工廠方法來建立物件。3 抽象工廠方法使用物件組合 物件的建立被實現在工廠介面所暴露出來的方法中。4 抽...

設計模式(2)

觀察者模式 observer模式是行為模式之一,它的作用是當乙個物件的狀態發生變化時,能夠自動通知其他關聯物件,自動重新整理物件狀態。observer模式提供給關聯物件一種同步通訊的手段,使某個物件與依賴它的其他物件之間保持狀態同 using namespace std class assist 抽...