面向对象设计中的常见设计原则
一般来说,设计模式都遵循面向对象设计的原则来分析设计。
单一职责原则
“当设计一个类时,该类应该只负责一件事”。一个类应该只负责系统中一个单独功能的实现。
开—闭原则
“对扩展开放、对修改关闭”。当面对新需求时,更好的做法是新建一个子类。
里氏替换原则
“子类必须能够替代父类”。父类中一定包含了可被子类重新实现的方法。
依赖倒置原则
- 高层模块不应该依赖于低层模块,两者都应该依赖于抽象概念。
抽象接口不应该依赖于实现,而实现应该依赖于抽象接口。
以计算机为例,位于高层的计算机中定义了USB接口,而这个接口定义了硬件所需的规格和软件驱动程序的编写规则。只要任何低层模块,如存储卡、U盘、读卡器、相机、手机等符合USB接口规范的,都能加入个人计算机的模块中,成为计算机功能的一环共同为用户提供服务。
接口隔离原则
“客户端不应该被迫使用它们用不到的接口类型”
最少知识原则
降低这个类与其他类的耦合度(依赖度),最小化在编写代码前需要了解的信息。
少用继承多用组合原则