概念 通过共享对象,减少系统中对象的数量,从而节省内存,提高性能 应用场景 当需要创建大量相似对象时,使用享元模式可以将对象中相同的部分提取出来作为共享对象,保留特殊的不可共享部分,减少了重复创建相同…
概念 用统一的方式来处理单个对象和一组对象 无论是一个元素,还是一组元素,都用同一套接口、一致的方式去操作 应用场景 当多种对象之间出现了树形嵌套关系,为每一种对象编写一套操作接口过于复杂,使用组合模…
概念 它通过将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦 应用场景 1)当出现多对多业务场景时,使用桥接模式可以各自实现每一部分,不会…
概念 为复杂的子系统提供一个统一的对外接口,通过这个接口,能更方便、更高效地访问这些子系统,而不需要关心它们内部的复杂逻辑。 应用效果 基本结构 1)外观类(Facade):对外提供统一接口,封…
概念 动态地为对象添加额外的功能,而不影响原对象 包装而非继承,扩展而非修改 应用场景 对于已经实现基本功能类,出现添加新功能的需求时,使用装饰模式可以在不修改原代码的基础上添加新功能 适合功能经常…
概念 给某个对象提供一个代理对象,并由代理对象来控制对这个对象的访问。 代理对象会额外提供各类访问控制操作,达到增强对象的效果 应用场景 对于过于复杂的对象,访问操作非常复杂,这时候需要代理模式封装这…
概念 通过创建一个适配器类,将一个接口转换成客户端所期望的另一个接口 应用场景 适配器模式的目的是为了应对不同类或系统间接口不兼容的问题 基本结构 1)目标接口(Target):客户端希望使用的接口 …