六大設計原則快速記憶SOLID

常見的面向對象設計的原則,可以簡化爲SOLID原則,堅固slidi的軟件需要遵循的原則。

1、單一職責原則SRP(Single Responsibility Principle)

     定義:不要存在多於一個導致類變更的原因。通俗的說,即一個類只負責一項職責。

2、開放-關閉原則OCP(Open-Close Principle)

     定義:一個軟件實體如類、模塊和函數應該對擴展開放,對修改關閉。

3、里氏替換原則LSP(Liskov Substitution Priciple)

     通俗的定義:所有引用基類的地方必須能透明地使用其子類的對象。

   更通俗的定義:子類可以擴展父類的功能,但不能改變父類原有的功能。 

    四層含義

  里氏替換原則包含以下4層含義:

  • 子類可以實現父類的抽象方法,但是不能覆蓋父類的非抽象方法。

  • 子類中可以增加自己特有的方法。

  • 當子類覆蓋或實現父類的方法時,方法的前置條件(即方法的形參)要比父類方法的輸入參數更寬鬆。

  • 當子類的方法實現父類的抽象方法時,方法的後置條件(即方法的返回值)要比父類更嚴格。

4、依賴倒置原則DIP(Dependence Inversion Principle)

      模塊間的依賴是通過抽象發生,實現類之間不發生直接的依賴關係,其依賴關係是通過接口或抽象類產    生的;

       接口或抽象類不依賴於實現類; 

       實現類依賴接口或抽象類。

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

      使用多個專門的接口比使用單一的總接口要好。

       一個類對另外一個類的依賴性應當是建立在最小的接口上的。
       一個接口代表一個角色,不應當將不同的角色都交給一個接口。沒有關係的接口合併在一起,形成一個 臃腫的大接口,這是對角色和接口的污染。

6、最少知識原則LKP(Least Knowledge Principle)

      迪米特法則(Law of Demeter)又叫作最少知道原則(Least Knowledge Principle 簡寫LKP),就是說一個對象應當對其他對象有儘可能少的瞭解,不和陌生人說話。英文簡寫爲: LoD.

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