类图
类图展示了设计模式中各参与者之间(接口、类)的关系和通信。
工厂方法类图:
工厂方法模式通过工厂创建对象,从而使请求者与对象实例创建的过程分离。
具有5个参与者
Client:客户,引用用工厂的类
Creator:工厂接口
ConcreteCreator:具体工厂类
Product:产品接口
ConcreteProduct:具体的产品类
类图由参与者(类,接口),接口名使用加粗斜体表示,类名使用加粗表示。抽象方法使用斜体表示。
关系类型
- 相识关系
一个参与者包含另外一个参与者的引用。
代理设计模式:
Proxy类包含的对RealSuject的引用,建立了相识关系
- 聚合关系
一个聚合对象与他的所有者具有相同的生命周期。
策略设计模式
Context类与Strategy子类具有相同的生命周期。
- 继承和实现关系
使用一个空心的箭头表示继承
一般接口与抽象类都统称为接口。 - 创建关系
一个对象创建了另外一个对象实例
对象图
对象图只显示实例,箭头指向引用的对象,对象名使用的是类名前面加小写字母a
责任链设计模式:
客户发起一个请求,通过一个处理器接口传递该请求,直到找到一个具体的处理器来处理这个请求。
交互图
可以跟踪请求的顺序
责任链设计模式:
# UML图的作用
帮助我们解释,分析和构造设计模式。
是一种辅助思考的工具
UML图可分为行为图和结构图。