注:设计模式示例代码下载
开放封闭原则
一个软件实体应当对扩展开放,则修改关闭。应当可以在不必修改源代码的情况下修改这个模块的行为。
设计的目的便在于面对需求的改变而保持系统的相对稳定,从而使得系统可以很容易的从一个版本升级到另一个版本。
单一职责原则
就一个类而言,应该仅有一个引起它变化的原因。
里氏代换原则
一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而且它察觉不出父类和子类对象的区别。在软件里面,
把父类替换成它的子类,程序的行为没有变化。
依赖倒转原则
抽象不应该依赖于细节,细节应该依赖于抽象。
高层模块不依赖底层模块,两者都依赖抽象。
迪米特法则
最少知识原则,也就是说,一个对象应当对其他对象尽可能少的了解 。如果两个类不必彼此直接通信,那么这两个类
就不应当发生直接的相互作用。如果其中一个类需要调用另一类的某一个方法的话,可以通过第三者转发这个调用。
UML图
一、描述类的类图
二、抽象类
三、接口
四、对象
五、一般化关系(继承)
六、关联关系
七、关联基数
八、聚合关系(是关联关系的一种,表示的是整体和个体之间的关系)
九、合成关系(是关联关系的一种,比聚合关系更强,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期,合成关系不能共享)
十、依赖关系(依赖也是类与类之间的连接,依赖总是单向的。依赖关系表示一个类依赖于另一个类的定义)