23種設計模式和六大原則

 

創建型模式:

工廠方法模式

抽象工廠模式

原型模式

建造者模式

單例模式

結構型模式:

裝飾模式

代理模式

適配器模式

享元模式

外觀模式

組合模式

橋接模式

行爲型模式:

策略模式

模板方法模式

觀察者模式

狀態模式

備忘錄模式

迭代器模式

命令模式

職責鏈模式

中介者模式

解釋器模式

訪問者模式

六大原則:

1、單一職責原則:書上比較官方的說法是 “就一個類而言,應該只有一個引起他變化的原因。”。其實直白點說就是一個類的功能儘量簡單,避免一個類中封裝過多的功能方法,在設計類的時候避免讓它太過龐大。

2、開閉原則:對擴展開放,對修改關閉。也就是說,當需求變更的時候,儘量不要去修改原有代碼,而是去增加新的代碼。

3、里氏代換原則:在程序中,子類可以替換掉父類並且不會對程序的運行結果造成影響。這裏一個比較典型的例子就是鴕鳥是鳥嗎?在生物學中,鴕鳥是鳥的一種,但是在面向對象的世界裏,鴕鳥不是鳥。因爲如果把鳥看成一個類的話,鳥一定會有一個飛的方法,而鴕鳥不會飛,因此鴕鳥不能夠繼承鳥類。

4、依賴倒置原則:抽象不依賴細節,細節依賴抽象。其實這也就是讓我們在程序開發時,面對接口編程而不是實現。

5、合成聚合複用原則:要理解這個原則首先要明白合成和聚合的概念。舉個栗子,大雁和翅膀的生命週期是一樣的,因此大雁和翅膀屬於合成關係。而雁羣和大雁則是一種聚合關係。當我們可以使用合成或者聚合的時候,就儘量不要使用繼承了,這樣其實也是減少了類之間的耦合,避免一個類因爲多層繼承而顯得很龐大。

6、迪米特法則(最少知道原則):如果兩個類不必彼此直接通訊,那麼這兩個類就不應該直接發生作用。這就要求我們在設計類的時候,儘量降低類的成員的訪問權限。它的根本思想其實也是鬆耦合。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章