面向對象設計的SOLID原則——學習筆記

S.O.L.I.D是面向對象設計和編程(OOD&OOP)中幾個重要編碼原則(Programming Priciple)的首字母縮寫。

SRP [The Single Responsibility Principle ] 單一責任原則
OCP [The Open Closed Principle] 開放封閉原則
LSP [The Liskov Substitution Principle] 里氏替換原則
DIP [The Dependency Inversion Principle] 依賴倒置原則
ISP [The Interface Segregation Principle] 接口分離原則
  1. 單一責任原則: 當需要修改某個類的時候原因有且只有一個(THERE SHOULD NEVER BE MORE THAN ONE REASON FOR A CLASS TO CHANGE)。換句話說就是讓一個類只做一種類型責任,當這個類需要承當其他類型的責任的時候,就需要分解這個類。

  2. 開放封閉原則 軟件實體應該是可擴展,而不可修改的。也就是說,對擴展是開放的,而對修改是封閉的。這個原則是諸多面向對象編程原則中最抽象、最難理解的一個。

  3. 里氏替換原則 當一個子類的實例應該能夠替換任何其超類的實例時,它們之間才具有is-A關系(is-a 指的是類的父子繼承關系,例如類D是另一個類B的子類(類B是類D的父類))

  4. 依賴倒置原則1. 高層模塊不應該依賴于低層模塊,二者都應該依賴于抽象 2. 抽象不應該依賴于細節,細節應該依賴于抽象

  5. 接口分離原則 不能強迫用戶去依賴那些他們不使用的接口。換句話說,使用多個專門的接口比使用單一的總接口總要好。

此篇為學習筆記,完全參考于 張善友 的blog,僅為學習研究;

參考blog:
http://www.cnblogs.com/shanyou/archive/2009/09/21/1570716.html
作者 :張善友

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 單一職責原則 (SRP) 全稱 SRP , Single Responsibility Principle 單一職...
    米莉_L閱讀 1,797評論 2 5
  • 設計模式基本原則 開放-封閉原則(OCP),是說軟件實體(類、模塊、函數等等)應該可以拓展,但是不可修改。開-閉原...
    西山薄涼閱讀 3,880評論 3 14
  • 面向對象的3個基本要素: 封裝、繼承、多態 面向對象的5個基本設計原則: 單一職責原則(Single-Respos...
    badcyc閱讀 904評論 0 4
  • 一、開閉原則(Open Close Principle) 一個軟件實體如類、模塊和函數應該對擴展開放,對修改關閉。...
    囧書閱讀 1,239評論 0 1
  • 程序設計的6大原則: 單一職責原則里氏替換原則依賴倒置原則接口隔離原則迪米特法則開閉原則 從根本學好,理解為什么要...
    silencefun閱讀 2,433評論 1 4