面向对象的设计原则

原创


遵循面向对象的设计原则有利于项目的维护、增加项目的可扩展性、易读性等。

面向对象的基本设计原则有:

SRP:单一职责原则

OCP:开放-封闭原则

LSP:Liskov替换原则

ISP:接口隔离原则

DIP:依赖倒置原则

……

大多的原则都是提倡面向接口或者抽象类编程。(https://www.cnblogs.com/chiweiming/p/9229457.html

这里介绍一下单一职责原则开放-封闭原则

单一职责原则

单一职责原则实际上就是提倡一个类只负责一个职责(一种操作),这样就会保证引起此类变化(调用此类)的情况变少。

如果一个类里面的操作过多,如果操作之间存在联系性,当一个操作需要修改时,由于操作在同一类内可能会共享一些资源,

所以可能会连锁反应的要改变其他操作,这样就会减少代码的可维护性和扩展性……

  如果将操作分散,将操作连贯起来后,当一个操作出现问题,不必要更改其他操作的代码,只需要去维护出现问题的类即可。

开放-封闭原则

  开放封闭-原则最重要的观点是类应该是可扩展的,但是不可修改的。

对于扩展是开放的:

  模块的行为可以扩展,当应用的需求改变时,可以对模块进行扩展,以满足新的需求。

对于更改是封闭的:

  对模块行为扩展时,不必改动模块的源代码。

  OCE的关键在于抽象

  •  抽象技术:抽象类(abstract class,Interface)
  •  抽象预见了可能的所有扩展(闭)
  •  由抽象可以随时导出新的类(开)

总之,在项目之中,抽象的思维是十分重要的,设计一个类,尽量让它面向接口或者抽象类。

19:18:36

2018-12-05

原文地址:https://www.cnblogs.com/chiweiming/p/10063184.html