1. 程式人生 > >面向對象設計的SOLID原則

面向對象設計的SOLID原則

eas hang 編程原則 face dep class 用戶 裏氏替換原則 依賴倒置

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 接口分離原則

SingleResponsibility Principle
單一責任原則:
當需要修改某個類的時候原因有且只有一個(THERE SHOULD NEVER BE MORE THAN ONE REASON FOR A CLASS TO CHANGE)。
換句話說就是讓一個類只做一種類型責任,當這個類需要承當其他類型的責任的時候,就需要分解這個類。
OpenClosed Principle
開放封閉原則
軟件實體應該是可擴展,而不可修改的。也就是說,對擴展是開放的,而對修改是封閉的。
這個原則是諸多面向對象編程原則中最抽象、最難理解的一個。
LiskovSubtitution Principle
裏氏替換原則
當一個子類的實例應該能夠替換任何其超類的實例時,它們之間才具有is-A關系
DependencyInversion Principle
依賴倒置原則
1. 高層模塊不應該依賴於低層模塊,二者都應該依賴於抽象
2. 抽象不應該依賴於細節,細節應該依賴於抽象
InterfaceSegregation Principle
接口分離原則
不能強迫用戶去依賴那些他們不使用的接口。換句話說,使用多個專門的接口比使用單一的總接口總要好。

這幾條原則是非常基礎而且重要的面向對象設計原則。
正是由於這些原則的基礎性,理解、融匯貫通這些原則需要不少的經驗和知識的積累。上述的圖片很好的註釋了這幾條原則。

http://www.cnblogs.com/shanyou/archive/2009/09/21/1570716.html

面向對象設計的SOLID原則