java23種設計模式

1、設計模式的6大設計原則

一、開閉原則(open close principle)

開放即指對擴展開放,對修改關閉 簡而言之,就是擴展功能的時候應該儘可能的不修改原有的代碼。算法

二、里氏代換原則(liskov substitution principle)

能夠簡單理解爲派生類與基類的替換關係,一旦程序中出現基類,那麼這個基類如果唄派生類替換了,也應該是合適的,而且對程序功能不受影響,該原則其實是開閉原則的補充。 基類能真正複用,派生類也可以在基類的基礎上增長新的行爲。實現開閉原則的關鍵步驟就是抽象化,而基類與子類的繼承關係就是抽象化的具體實現,因此里氏代換原則是對實現抽象化的具體步驟的規範。編程

三、依賴倒轉原則(dependence inverse principle)

這個原則是開閉原則的基礎,具體內容:針對接口編程,依賴於抽象而不依賴於具體。設計模式

四、接口隔離原則(Interface Segregation Principle)

使用多個隔離的接口,比使用單個接口要好,該模式出發點在與大一點的軟件設計架構,便於維護升級,下降耦合度。架構

五、迪米特法則,又稱最少知道原則(Demeter Principle)

一個實體應當儘可能少地與其餘實體之間發生相互做用,使得系統功能模塊相對獨立。學習

六、合成複用原則(Composite Reuse Principle)

儘可能使用合成/聚合的方式,而不是使用繼承。設計

2、設計模式的3大分類

一、建立型模式

對象實例化的模式,建立型模式用於解耦對象的實例化過程。代理

(1)工廠方法模式
(2)抽象工廠模式
(3)單例模式
(4)建造者模式
(5)原型模式

二、結構型模式

把類或對象結合在一塊兒造成一個更大的結構。對象

(1)適配器模式
(2)裝飾器模式
(3)代理模式
(4)外觀模式
(5)橋接模式
(6)組合模式
(7)享元模式

三、行爲型模式

類和對象如何交互,及劃分責任和算法。繼承

(1)策略模式
(2)模板方法模式
(3)觀察者模式
(4)迭代子模式
(5)責任鏈模式
(6)命令模式
(7)備忘錄模式
(8)狀態模式
(9)訪問者模式
(10)中介者模式
(11)解釋器模式

歡迎你們關注個人公衆號<情繫IT>,每日推送文章供你們學習參考。接口

相關文章
相關標籤/搜索