![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 85
23种设计模式使用及场景分析
健忘的鱼
相濡以沫,不如相忘于江湖
展开
-
【设计模式】策略、状态、命令模式
策略、状态、命令模式原创 2024-01-12 10:53:09 · 869 阅读 · 0 评论 -
【设计模式】代理,装饰,适配器
结构型设计模式代理模式静态代理类图实现动态代理装饰器模式类图实现类适配器类图实现对象适配器类图实现实践参考 代理模式 代理模式目的是为外部访问者提供一个代理对象,使得外部访问者不直接访问某个对象的情况下,通过代理类访问对象方法,产生的缺点就是会延迟相应方法的访问,其用法可分为静态代理和动态代理 静态代理 类图 实现 被代理对象的对外接口 interface Service { fun visit() } 被代理对象本体 class RealServer constructor( na原创 2021-12-08 16:48:28 · 400 阅读 · 0 评论 -
【设计模式】责任链模式
责任链模式理论模型实例实现场景分解实现定义拦截器接口实现链条,提供传递方法构建实例调用实践参考 该模式主要用于处理一系列在同类型事务上具有相关性的场景,典型的如OKHTTP中的拦截器,采用的就是该模式,每个拦截器决定是否拦截还是交给下一个拦截点,各点之间连接成链,之所以是链是因为有一个点断开(即被拦截)则整个事务结束。责任链模式主要解决了各拦截器之间不相互感知且能按顺序执行。 理论模型 interceptor 接口,传递拦截链,拦截点需实现的接口 chain 定义链条,责任链的核心实现,持有所有的拦截点原创 2021-12-19 17:55:42 · 135 阅读 · 0 评论 -
【设计模式】工厂模式
工厂模式实现简单工厂模式类图实现方式定义产品接口子类实现产品接口工厂类根据用户需求返回具体产品(核心)适用性工厂方法模式类图实现方式定义抽象工厂接口(核心)子类实现工厂抽象用户根据具体的工厂获取具体产品适用性抽象工厂模式类图实现赋予抽象工厂更多的类别(核心)交由子类实现实例化工厂创建产品对象适用性总结实践参考 根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。 简单工厂模式 用户需要提供原创 2021-12-08 14:18:54 · 109 阅读 · 0 评论