【JAVA】极简23种设计模式

极简设计模式

一、设计模式原则

  • 单一指责原则
  • 开闭原则
  • 里氏替换原则
  • 接口分离原则
  • 依赖倒置原则
  • 迪米特法则
  • 不要重复

二、设计模式分类

  • 创建型模式

    • 抽象工厂 创建几类家族的实例
    • 构建者 把对象的构建和它分开
    • 工厂方法 创建一个共通接口的若干子类的实例
    • 原型 创建一个被克隆初始化的实例用于复制或者克隆
    • 单例 使一个类无论在什么时候访问都可以得到唯一的实例
  • 结构性模式

    • 适配器 为多个不同的类之间建立连接的接口
    • 桥接 对象有多个属性时把属性之间的关联关系从m * n 改为 m + n
    • 组合 创建一个自相似的树形结构的节点
    • 装饰 动态的为对象增加责任
    • 外观 通过一个接口来隐藏整个子系统
    • 享元 用一个共享的实例来加快访问
    • 代理 用一个对象来代表另外一个对象
  • 行为型模式

    • 职责链 在一个链条间传递任务
    • 命令 把命令包装成对象
    • 翻译者 在一个语言环境中不同的语言元素表示不同的语义
    • 迭代器 循环地访问一个列表中的元素
    • 协调者 在对象之间建立一个简化的沟通类
    • 备注 存储对象内部的数值
    • 观察者 当对象发生变化时通知一组其他对象
    • 状态 当对象状态变更时变更处理
    • 策略 采取不同的算法进行不同的处理
    • 模板方法 把通用的处理放在父类,具体的实现步骤放在子类的实现
    • 访问者 不必改变对象定义的情况下定义应用于对象的操作
“年轻时,我没受过多少系统教育,但什么书都读。读得最多的是诗,包括烂诗,我坚信烂诗早晚会让我邂逅好诗。” by. 马尔克斯
原文地址:https://www.cnblogs.com/jzsg/p/10922230.html