1、面向对象原则设计原则概述
软件的可维护性和可复用性是非常重要的用于衡量软件质量的属性
面向对象设计原则为支持课维护性复用而诞生的
七个常用的面向对象设计原则
a、单一职责原则
一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中
单一职责原则是实现高内聚和低耦合的指导方针
也就是在一个类中所写的方法最好是同一类型的方法,这样在修改方法时不会对其他方法有所改变
b、开闭原则
软件实体应当对扩展开放,对修改关闭
它是面向对象的课复用设计的第一块基石,它是最重要的面向对象设计原
抽象化是开闭原则的关键
就是利用抽象类、接口利用具体类来丰富业务
c、里氏代换原则
所有引用基类的地方必须能透明地使用其子类的对象
它是实现开闭原则的重要方式之一
d、依赖倒转原则
高层模块不应该依赖底层模块,它们都应该依赖抽象。抽象不应该依赖于细节,细节应该依赖于抽象
它是面向对象设计的主要实现机制之一,它是系统抽象化的具体实现
e、接口隔离原则
客户端不应该依赖那些它不需要的接口
要注意控制接口的粒度,接口不能太小,如果太小会导致系统中的接口泛滥,不利于维护;接口也不能太大,太大的接口将违背接口隔离原则,灵活性较差,使用起来不方便
f、合成复用原则
优先使用对象组合,而不是通过继承来达到复用的目的
在复用时要尽量使用组合/聚合关系,少用继承
g、迪米特原则
每一个软件单位对其他单位都只有最少的知识,而且局限于那些局限于那些于本单位密切相关的软件单位
要求一个软件实体应当尽可能地与其它实体发生相互作用
在设计系统时尽量减少对象之前的交互