设计模式

2020/12/26 OOP 共 579 字,约 2 分钟

设计模式

创建型

  • 单例 Singleton: 饿汉式(预先加载), 懒汉式(用到再加载), 双重校验锁
  • 工厂 Factory:统一方法创建对象,有工厂方法(子类创建)、抽象工厂(创建家族)、简单工厂(单独一个工具类创建)
  • 生成器 Buildere: 类似 string builder
  • 原型 ProtoType:.copy()方法, 深拷贝

行为型

  • 责任链 Responsibility Chain: 类似中间件 middleware, 挨个处理,可提前返回
  • 命令 Command:swing 的 action,有回调
  • 解释器 Interpreter: 比如 formater, 有词法分析
  • 迭代器 Iterator: 遍历
  • 中介者 Mediator: 集中通知和控制
  • 备忘录 Memento:拷贝一份 Origin
  • 观察者 Observer: 回调更新
  • 状态 State:状态机
  • 策略 Strategy: 内置几种算法,可以选择,比如 filter
  • 模板方法 Template Method: 新子类自定义实现某函数,比如 sort

结构型

  • 适配器 Adapter: 比如 Array 的 asList
  • 桥接 Bridge: 将抽象与实现分离开来
  • 组合 Composite: 整体/部分
  • 装饰 Decorator: 给类动态添加功能
  • 外观 Facade: 统一接口来访问子系统
  • 享元 FlyWeight: 利用共享的方式来支持大量细粒度的对象
  • 代理 Proxy: 控制其他对象的访问

Reference

Search

    Table of Contents