天天看點

設計模式和七大設計原則不難的

設計模式和七大設計原則不難的

🍁 作者:知識淺談,CSDN部落格專家,阿裡雲簽約部落客,InfoQ簽約部落客,華為雲雲享專家

📌 擅長領域:全棧工程師、爬蟲、ACM算法

💒 公衆号:知識淺談

設計模式和其他原則的總結

🤞以下是我對設計模式和設計原則的簡單了解,不是去複制粘貼網絡上的東西,自己的簡答了解,比較偏向白話一點,希望有所幫助。🤞

正菜來了⛳⛳⛳

🎈設計模式

  1. 工廠模式:如我們自定義的建立對象的對象等,如A對象專門用于建立B對象,即A為工廠類。
  2. 抽象工廠模式:我們常用的ApplicationContext,BeanFactory,即為抽象工廠模式

    ​插入一點:工廠模式專門生産同一種類的對象,抽象工廠模式生成多種類的對象​

    ​。
  3. 單例模式:常用的SpringIOC容器中預設建立的都是單例的對象,即單例模式的應用。
  4. 原型模式: 這種模式即我們常用的new 去建立的對象記為原型模式下建立的的對象。
  5. 裝飾器模式:這個主要是為了争強某個對象方法的功能。
  6. 代理模式:代理模式也是為了增強某個方法的功能建立的代理對象。

    ​裝飾器和代理模式兩者的差別就是裝飾器不改變原來的對象,代理模式建立的代理對象内部都會新建立一個目标對象​

    ​。
  7. 觀察者模式:spring中的監聽器,即當有什麼問題的時候才會去通知。
  8. 擴充卡模式:我們常用 FileInputstream,預設隻能讀取位元組流,為了能夠适配讀取字元流,使用InputStreamReader把傳入的FileInputstream建立一個reader的對象。
  9. 享元模式:享元模式(Flyweight pattern)又叫輕量級模式,是對象池的一種标簽。類似線程池,線程池可以避免不停的建立和銷毀對象,消耗性能。享元模式可以減少對象數量,其宗旨是共享細粒度對象,将多個對同一對象的通路集中起來

🎈七大設計原則

  1. 開放封閉原則:對擴充開放,對修改封閉
  2. 單一職責原則:即一個類要集中在單一的職責上。
  3. 迪米特法則: 一個類知道其他類的東西越少越好。
  4. 裡氏替換原則:即子類能替換父類的位置,意思是父類的方法,子類不能改變的一種思想。
  5. 依賴倒置原則:即盡量依賴于接口而不是對象,減少耦合。
  6. 組合原則:盡量使用合成/聚合達到複用,盡量少用繼承。
  7. 接口分離原則:一個接口盡量功能是單一的,避免接口中塞進很不不同的接口。

🍚總結

繼續閱讀