php 23種設計模式 - 設計模式簡介以及分類

1、 Introduction【介紹】

設計模式:提供了一種普遍的可重用的方式來解決咱們平常編程中經常碰見的問題。設計模式並不必定就是一個類庫或者第三方框架,它們更多的表現爲一種思想而且普遍地應用在系統中。它們也表現爲一種模式或者模板,能夠在多個不一樣的場景下用於解決問題。設計模式能夠用於加速開發,而且將不少大的想法或者設計以一種簡單地方式實現。固然,雖然設計模式在開發中頗有做用,可是千萬要避免在不適當的場景誤用它們。html

2、 Category【分類】

根據目的和範圍,設計模式能夠分爲五類。
按照目的分爲:建立設計模式,結構設計模式,以及行爲設計模式。
按照範圍分爲:類的設計模式,以及對象設計模式。算法

1. 按照目的分,目前常見的設計模式主要有23種,根據使用目標的不一樣能夠分爲如下三大類:編程

2.按照範圍分爲:類的設計模式,以及對象設計模式ui

  • 類的設計模式(Class patterns):用於類的具體實現的設計模式。包含了如何設計和定義類,以及父類和子類的設計模式。spa

  • 對象設計模式(Object patterns): 用於對象的設計模式。與類的設計模式不一樣,對象設計模式主要用於運行期對象的狀態改變、動態行爲變動等。設計

3、 DesignPatternsPrinciple【設計模式原則】

設計模式六大原則

  • 開放封閉原則:一個軟件實體如類、模塊和函數應該對擴展開放,對修改關閉。
  • 里氏替換原則:全部引用基類的地方必須能透明地使用其子類的對象.
  • 依賴倒置原則:高層模塊不該該依賴低層模塊,兩者都應該依賴其抽象;抽象不該該依賴細節;細節應該依賴抽象。
  • 單一職責原則:不要存在多於一個致使類變動的緣由。通俗的說,即一個類只負責一項職責。
  • 接口隔離原則:客戶端不該該依賴它不須要的接口;一個類對另外一個類的依賴應該創建在最小的接口上。
  • 迪米特法則:一個對象應該對其餘對象保持最少的瞭解。
相關文章
相關標籤/搜索