面向对象设计中的常见设计原则

一般来说,设计模式都遵循面向对象设计的原则来分析设计。

单一职责原则

“当设计一个类时,该类应该只负责一件事”。一个类应该只负责系统中一个单独功能的实现。

开—闭原则

“对扩展开放、对修改关闭”。当面对新需求时,更好的做法是新建一个子类。

里氏替换原则

“子类必须能够替代父类”。父类中一定包含了可被子类重新实现的方法。

依赖倒置原则

  • 高层模块不应该依赖于低层模块,两者都应该依赖于抽象概念。
  • 抽象接口不应该依赖于实现,而实现应该依赖于抽象接口。

    1. 以计算机为例,位于高层的计算机中定义了USB接口,而这个接口定义了硬件所需的规格和软件驱动程序的编写规则。只要任何低层模块,如存储卡、U盘、读卡器、相机、手机等符合USB接口规范的,都能加入个人计算机的模块中,成为计算机功能的一环共同为用户提供服务。

接口隔离原则

“客户端不应该被迫使用它们用不到的接口类型”

最少知识原则

降低这个类与其他类的耦合度(依赖度),最小化在编写代码前需要了解的信息。

少用继承多用组合原则