软件设计模式类型介绍

软件设计模式类型介绍

  • 创建型:对对象创建过程的各种问题和解决方案的总结
    • 构建者模式(Builder):比如StringBuilder或lombok的@builder
      • 与工厂模式的区别是:建造者模式更加关注与零件装配的顺序
    • 单例模式(Singleton):比如一个类提供Instance单例
      • 单例类只能有一个实例。
      • 单例类必须自己创建自己的唯一实例。
      • 单例类必须给所有其他对象提供这一实例。
    • 工厂模式(Factory)
    • 原型模式(ProtoType)
  • 行为型:关注类和对象间的交互和职责划分等
    • 观察者模式(Observer):比如使用handler做事件抛出
    • 策略模式(Strategy)
    • 解释器模式(Interpreter)
    • 命令模式(Command)
    • 迭代器模式(Iterator)
    • 模板方法模式(Template Method)
    • 访问者模式(Visitor)
  • 结构型:关注软件设计结构,主要针对类、对象继承、组合方式
    • 适配器模式(Adapter)
    • 桥接模式(Bridge)
    • 装饰者模式(Decorator)
    • 代理模式(Proxy)
    • 组合模式(Composite)
    • 外观模式(Facade)
    • 享元模式(Flyweight)
原文地址:https://www.cnblogs.com/keep250/p/13132540.html