随笔分类 - 设计模式
设计模式
摘要:装饰器模式属于结构型模式,它是作为现有的类的一个包装 1、意图: 动态地给一个对象添加一些额外的职责。就增加功能来说,装饰器模式相比生成子类更为灵活 2、主要解决: 一般的,我们为了扩展一个类经常使用继承方式实现,由于继承为类引入静态特征,并且随着扩展功能的增多,子类会很膨胀 3、何时使用: 在不想
阅读全文
摘要:备注: 责任链与策略模式有很多相似之处,如都是行为型设计模式,都能够处理代码中的if-else逻辑 主要区别在于: 策略模式 封装了算法,通过上下文对象去接受客户端的数据,根据数据类型执行不同的算法 策略模式的客户端知道所有算法以及各种算法的区别 package com.gabriel.stage.
阅读全文
摘要:一.为什么要使用工厂模式去优化代码 现有的企业微信应用中,多个配置的应用Id不同,不同的应用需要各种定制化的配置,例如在企业微信消息推送中,通常使用@ComfigurationProperties去读取配置文件中的配置,然后在不同的定时任务中使用@AutoWired去注入相关的配置类,这样有一个缺点
阅读全文
摘要:单例模式 饿汉式(急切实例化) public class EagerSingleton { /** 1.私有化构造方法 */ private EagerSingleton() { } /** 2.声明静态成员变量并赋初始值-类初始化的时候静态变量就被加载,因此叫做饿汉式 */ public stat
阅读全文
摘要:策略模式 策略模式用于解决判断分支过多的问题,使代码变得简洁和优雅, 策略模式在多种方式在项目中落地,下面举例说明通过指定不同类型的订单使用策略模式执行不同的业务逻辑 文章参考自公众号:石杉的架构笔记 一.项目结构 二.各个类的说明 1.自定义注解 //通过注解中的value值来表示不同的分支,从而
阅读全文