原创
遵循面向对象的设计原则有利于项目的维护、增加项目的可扩展性、易读性等。
面向对象的基本设计原则有:
SRP:单一职责原则
OCP:开放-封闭原则
LSP:Liskov替换原则
ISP:接口隔离原则
DIP:依赖倒置原则
……
大多的原则都是提倡面向接口或者抽象类编程。(https://www.cnblogs.com/chiweiming/p/9229457.html)
这里介绍一下单一职责原则和开放-封闭原则
单一职责原则
单一职责原则实际上就是提倡一个类只负责一个职责(一种操作),这样就会保证引起此类变化(调用此类)的情况变少。
如果一个类里面的操作过多,如果操作之间存在联系性,当一个操作需要修改时,由于操作在同一类内可能会共享一些资源,
所以可能会连锁反应的要改变其他操作,这样就会减少代码的可维护性和扩展性……
如果将操作分散,将操作连贯起来后,当一个操作出现问题,不必要更改其他操作的代码,只需要去维护出现问题的类即可。
开放-封闭原则
开放封闭-原则最重要的观点是类应该是可扩展的,但是不可修改的。
对于扩展是开放的:
模块的行为可以扩展,当应用的需求改变时,可以对模块进行扩展,以满足新的需求。
对于更改是封闭的:
对模块行为扩展时,不必改动模块的源代码。
OCE的关键在于抽象
- 抽象技术:抽象类(abstract class,Interface)
- 抽象预见了可能的所有扩展(闭)
- 由抽象可以随时导出新的类(开)
总之,在项目之中,抽象的思维是十分重要的,设计一个类,尽量让它面向接口或者抽象类。
19:18:36
2018-12-05