23种经典设计模式UML类图汇总
首先要看得懂UML类图和时序图,不同符号表示相互间的关系含义。使用下图做一个简析的说明:
- 车的类图结构为<<abstract>>,表示车是一个抽象类;
- 它有两个继承类:小汽车和自行车;它们之间的关系为实现关系,使用带空心箭头的虚线表示;
- 小汽车为与SUV之间也是继承关系,它们之间的关系为泛化关系,使用带空心箭头的实线表示;
- 小汽车与发动机之间是组合关系,使用带实心箭头的实线表示;
- 学生与班级之间是聚合关系,使用带空心箭头的实线表示;
- 学生与身份证之间为关联关系,使用一根实线表示;
- 学生上学需要用到自行车,与自行车是一种依赖关系,使用带箭头的虚线表示
类型
|
模式名称 |
学习难度 |
使用频率 |
创建型模式 Creational Pattern |
单例模式 Singleton Pattern |
★☆☆☆☆ |
★★★★☆ |
简单工厂模式 Simple Factory Pattern |
★★☆☆☆ |
★★★☆☆ |
|
工厂方法模式 Factory Method Pattern |
★★☆☆☆ |
★★★★★ |
|
抽象工厂模式 Abstract Factory Pattern |
★★★★☆ |
★★★★★ |
|
原型模式 Prototype Pattern |
★★★☆☆ |
★★★☆☆ |
|
建造者模式 Builder Pattern |
★★★★☆ |
★★☆☆☆ |
|
结构型模式 Structural Pattern |
适配器模式 Adapter Pattern |
★★☆☆☆ |
★★★★☆ |
桥接模式 Bridge Pattern |
★★★☆☆ |
★★★☆☆ |
|
组合模式 Composite Pattern |
★★★☆☆ |
★★★★☆ |
|
装饰模式 Decorator Pattern |
★★★☆☆ |
★★★☆☆ |
|
外观模式 Façade Pattern |
★☆☆☆☆ |
★★★★★ |
|
享元模式 Flyweight Pattern |
★★★★☆ |
★☆☆☆☆ |
|
代理模式 Proxy Pattern |
★★★☆☆ |
★★★★☆ |
|
行为型模式 Behavioral Pattern |
职责链模式 Chain of Responsibility Pattern |
★★★☆☆ |
★★☆☆☆ |
命令模式 Command Pattern |
★★★☆☆ |
★★★★☆ |
|
解释器模式 Interpreter Pattern |
★★★★★ |
★☆☆☆☆ |
|
迭代器模式 Iterator Pattern |
★★★☆☆ |
★★★★★ |
|
中介者模式 Mediator Pattern |
★★★☆☆ |
★★☆☆☆ |
|
备忘录模式 Memento Pattern |
★★☆☆☆ |
★★☆☆☆ |
|
观察者模式 Observer Pattern |
★★★☆☆ |
★★★★★ |
|
状态模式 State Pattern |
★★★☆☆ |
★★★☆☆ |
|
策略模式 Strategy Pattern |
★☆☆☆☆ |
★★★★☆ |
|
模板方法模式 Template Method Pattern |
★★☆☆☆ |
★★★☆☆ |
|
访问者模式 Visitor Pattern |
★★★★☆ |
★☆☆☆☆ |