【设计模式】常用设计模式总结

2022/04/08 设计模式 共 970 字,约 3 分钟

23种设计模式

23 种经典设计模式共分为 3 种类型,分别是创建型、结构型和行为型。

创建型 结构型 行为型 
单例模式原型模式代理模式桥接模式观察者模式访问者模式
工厂模式(工厂方法和抽象工厂) 装饰者模式组合模式模板模式备忘录模式
建造者模式 适配器模式享元模式策略模式命令模式
  门面模式 职责链模式解释器模式
    迭代器模式中介模式
    状态模式 
常用不常用常用不常用常用不常用

创建型设计模式总结

创建型设计模式主要解决“对象的创建”问题。

以下只总结常用的3种创建型设计模式。

创建型设计模式原理场景
单例模式创建全局唯一的对象 
工厂模式创建不同但是相关类型的对象(继承同一父类或者接口的一组子类) 
建造者模式创建复杂对象,通过设置不同的可选参数定制化创建 

结构型设计模式总结

结构型模式主要总结了一些类或对象组合在一起的经典结构,这些经典的结构可以解决特定应用场景的问题。

以下只总结常用的4种结构型设计模式。

结构型设计模式原理场景
代理模式不改变原始类接口的条件下,为原始类定义一个代理类,主要目的是控制访问监控、统计、鉴权、限流、事务、幂等、日志、RPC、缓存
装饰者模式主要解决继承关系过于复杂的问题,通过组合来替代继承,给原始类添加增强功能IO
适配器模式提供跟原始类不同的接口,用来做适配的,它将不兼容的接口转换为可兼容的接口补救设计上的缺陷
门面模式通过封装细粒度的接口,提供组合各个细粒度接口的高层次接口,来提高接口的易用性,或者解决性能、分布式事务等问题 

行为型设计模式总结

行为型设计模式主要解决的就是“类或对象之间的交互”问题。

以下只总结常用的6种行为型设计模式。

行为型设计模式原理场景
观察者模式将观察者和被观察者代码解耦,又叫发布订阅模式邮件订阅、RSS Feeds
模板模式在一个方法中定义一个业务逻辑骨架,并将某些步骤推迟到子类中实现AbstractList addAll()
策略模式定义一个策略接口和一组实现这个接口的策略类,策略的创建由工厂类来完成,客户端运行时根据type动态确定使用哪个策略避免冗长的 if-else
职责链模式多个处理器依次处理同一个请求过滤器、拦截器
迭代器模式也叫游标模式,它用来遍历集合对象,作用是解耦容器代码和遍历代码集合迭代器
状态模式它由 3 个部分组成:状态、事件、动作,事件触发状态的转移及动作的执行工作流引擎

文档信息

搜索

    Table of Contents