一、四人幫(gof)
創者是四個人,他們合著出來設計模式的書。
他們提出物件導向設計原則:
1.對介面程式設計而不是對實現程式設計
2.優先使用物件組合而不是繼承
二、設計模式型別
總共提到23中設計模式,這些模式可以分成三大類:
建立性模式,
結構性模式、
行為型模式
1.建立型模式:這些設計模式提供了一種在建立物件的同時隱藏建立邏輯方法,而不是使用新的運算子直接例項化物件,這使得程式在判斷針對某個給定的例項需要建立哪些物件時更加靈活
2.結構型模式:這些設計模式關注類和物件的組合。繼承的概念被用來組合介面和定義組合物件獲得新功能的方式
3.行為型模式:這些設計模式特別關注物件之間的通訊
三、設計模式的六大原則
1、單一原則:
對於乙個類來說,應該只有乙個引起他變化的原因,也就是乙個類承擔乙個職能。
單一原則的優點:降低類的複雜度,乙個類只負責乙個職責,其邏輯肯定要比負責多項職責簡單;提高類的可讀性,提高**的可維護性。
2、黎克特制代換原則 :
是繼承的問題,父類能夠通過子類進行擴充套件,,子類對於父類的可替代性。
3、開放-封閉原則:
開放-封閉原則是物件導向開發設計原則的核心,
定義:程式的實體物件(模組、類、函式等)應該是可以進行擴充套件的,但不應該可以修改。
開放-封閉原則的兩個特徵:
1.對於擴充套件是開放的
2.對於修改是封閉的
4、依賴倒轉原則:
針對介面程式設計,依賴抽象而不是依賴具體
5、合成/聚合復用原則
當類與類之間是包含關係,而不是is-a繼承關係時,使用合成聚合,就是對使用介面,隔離類與類之間的耦合。
6、迪公尺特法則:
如果兩個類之間不必直接通訊,則這兩個類不應該發生直接的相互關係,如果其中的乙個類需要呼叫另乙個類的某個方法,,可以通過第三方來**這個呼叫。
設計模式(一) 簡介
設計模式 design pattern 是一套被反覆使用 多數人知曉的 經過分類的 設計經驗的總結。使用設計模式的目的 為了 可重用性 讓 更容易被他人理解 保證 可靠性。設計模式使 編寫真正工程化 設計模式是軟體工程的基石脈絡,如同大廈的結構一樣。設計模式 design pattern 代表了最佳...
設計模式 一 簡介
前言 我們常常在很多開源框架中看到 中用了很多設計模式,如果我們不熟悉一些常見的設計模式,可能會感覺看起來有困難。當然我們學習設計模式不光是看,重要的是運用在我們的 中。我們先來了解了解一些理論,結合理論我們寫些小例子,再去看看合框架的原始碼。多看多想多寫,我們自然而然就會用了。概念是軟體開發人員在...
一,設計模式簡介
強調了抽象的概念,而不是分而治之,上 include include class shape class point public shape point virtual void draw class line public shape line class rect public shape r...