面向对象设计,前人总结了五大原则,简称为:SOLID原则,具体如下:
S (Single responsibility principle) = 单一责任原则:一个类有且只有一个职责。
O (Open closed principle)= 开闭原则:软件实体(类,模块,函数等)应该对扩展开放,对修改关闭。
L (Liscov substitution principle)= Liscov替换原则:子类型必须能够替换它们的基类,也就是使用基类引用的函数必须能够使用派生类而无须了解派生类
I (Interface segregation principle)= 接口隔离原则:用户不应该被迫依赖他们不使用的接口,接口只应该包括必要的方法而不是所有的
D (Dependency inversion principle))= 依赖倒置原则:高层次的模块不应该依赖于低层次的模块,而是,都应该依赖于抽象。
其他若干原则:
“组合替代继承”:用组合比用继承好;
“笛米特法则”:类对其它类知道的越少越好;
“共同封闭原则”:相关类应该一起打包;
“稳定抽象原则”:类越稳定,就越应该是抽象类;