06.29 設計模式:什麼是設計模式

設計模式:什麼是設計模式

設計模式

什麼是設計模式?

設計模式就是一套反覆被使用的、為多數人知曉的、經過分類編目的、代碼設計經驗的總結。也就是在開發過程中約定俗成的代碼設計的規範和模板。

根據設計模式的參考書 Design Patterns - Elements of Reusable Object-Oriented Software(設計模式 - 可複用的面向對象軟件元素) 中所提到的,總共有 23 種設計模式。分為三大類:創建型模式(Creational Patterns)、結構型模式(Structural Patterns)、行為型模式(Behavioral Patterns)。

  • 創建型模式:
  • 這個類型的設計模式 在創建對象的同時隱藏創建邏輯的方式,而不是直接通過new去實例化對象。這樣程序在判斷針對某個給定實例需要創建哪些對象時更加靈活。
  • 主要包括下面五種具體的設計模式:
  • 工廠模式(Factory Pattern)、抽象工廠模式(Abstract Factory Pattern)、單例模式(Singleton Pattern)、建造者模式(Builder Pattern)和原型模式(Prototype Pattern)。
  • 結構型模式:
  • 這類設計模式關注類和對象的組合。
  • 主要包括下面七種具體的設計模式:
  • 適配器模式(Adapter Pattern)、橋接模式(Bridge Pattern)、組合模式(Composite Pattern)、裝飾器模式(Decorator Pattern)、外觀模式(Facade Pattern)、享元模式(Flyweight Pattern)和代理模式(Proxy Pattern)
  • 行為型模式:
  • 這類設計模式關注對象之間的通信。
  • 主要包括下面十一種具體的設計模式:
  • 責任鏈模式(Chain of Responsibility Pattern)、命令模式(Command Pattern)、解釋器模式(Interpreter Pattern)、迭代器模式(Iterator Pattern)、中介者模式(Mediator Pattern)、備忘錄模式(Memento Pattern)、觀察者模式(Observer Pattern)、狀態模式(State Pattern)、策略模式(Strategy Pattern)、模板模式(Template Pattern)和訪問者模式(Visitor Pattern)。

六大原則

  • 開閉原則(Open Close Principle): 對擴展開放,對修改關閉。實現熱插拔,提高擴展性。
  • 里氏代換原則(Liskov Substitution Principle): 實現抽象的規範,實現子父類互相替換;
  • 依賴倒轉原則(Dependence Inversion Principle): 針對接口編程,實現開閉原則的基礎;
  • 接口隔離原則(Interface Segregation Principle): 降低耦合度,接口單獨設計,互相隔離;
  • 迪米特法則,又稱最少知道原則(Demeter Principle): 功能模塊儘量獨立;
  • 合成複用原則(Composite Reuse Principle): 儘量使用合成/聚合的方式,而不是使用繼承。

為什麼使用設計模式?

使用設計模式能夠保證代碼的可重用性,讓代碼更容易讓閱讀者理解,保證代碼的可靠性。


分享到:


相關文章: