目录
1. 单一职责原则
对类来说的,即一个类应该只负责一项职责。
1)降低类的复杂度,一个类只负责一项职责。
2) 提高类的可读性,可维护性
3) 降低变更引起的风险
2. 接口隔离原则
一个类对另一个类的依赖应该建立在最小接口上
3. 里氏替换原则
继承实际上让两个类耦合性增强了,在适当的情况下,可 以通过聚合,组合,依赖 来解决问题。
4. 依赖倒置原则
1) 高层模块不应该依赖低层模块,二者都应该依赖其抽象
2) 抽象不应该依赖细节,细节应该依赖抽象
3) 依赖倒转(倒置)的中心思想是面向接口编程
5. 开闭原则
一个软件实体如类,模块和函数应该对扩展开放(对提供方),对修改关闭(对使用方)。用抽象构建框架,用实现扩展细节。
6. 迪米特原则
迪米特法则(Demeter Principle)又叫最少知道原则,即一个类对自己依赖的类知道的 越少越好。也就是说,对于被依赖的类不管多么复杂,都尽量将逻辑封装在类的内 部。对外除了提供的public 方法,不对外泄露任何信息
迪米特法则的核心是降低类之间的耦合
7. 合成复用原则
原则是尽量使用合成/聚合的方式,而不是使用继承
8.UML类图
1)类图是描述类与类之间的关系的,是UML图中最核心的
2) 类之间的关系:依赖、泛化(继承)、实现、关联、聚合与组合
1、类图—依赖关系(Dependence)
只要是在类中用到了对方,那么他们之间就存在依赖关系。如果没有对方,连编 绎都通过不了。
1) 类中用到了对方 2) 如果是类的成员属性 3) 如果是方法的返回类型 4) 是方法接收的参数类型 5) 方法中使用到
2、类图—泛化关系(generalization)
泛化关系实际上就是继承关系,他是依赖关系的特例
如果A类继承了B类,我们就说A和B存在泛化关系
3、类图—实现关系(Implementation)
实现关系实际上就是A类实现B接口,他是依赖关系的特例
4、类图—关联关系(Association)
关联关系实际上就是类与类之间的联系,他是依赖关系的特例 关联具有导航性:
即双向关系或单向关系
5、类图—聚合关系(Aggregation)
聚合关系(Aggregation)表示的是整体和部分的关系,整体与部分可以分开。聚 合关系是关联关系的特例,所以他具有关联的导航性与多重性。
6、类图—组合关系(Composition)
也是整体与部分的关系,但是整体与部分不可以分开。