
设计模式
null_null_bug
这个作者很懒,什么都没留下…
展开
-
重构实例-消息发送-职责独立-2
2. 重构-策略模式-职责独立 由于这是一个长文,分成了好几章来介绍如何重构。 原始代码及准备 职责独立 去除static关键字 接口添加转换方法 方法合并 使用策略进行重构-Map方式 使用策略进行重构-枚举方式 现在来分析下代码的问题 先从入口MessageSender开始吧,这个类第一眼看上去,觉得很简单吧,就是按类型判断下,执行NotifySendUtils类中 的发送逻辑代码。这样子看这个类没有什么大的问题么,再说NotifySendUtils吧,它封装了各种发送渠道的调用方法,还做成了静态方原创 2020-12-26 11:56:18 · 248 阅读 · 0 评论 -
重构实例-消息发送-原始代码及准备-1
1. 重构-策略模式-原始代码及准备 由于这是一个长文,分成了好几章来介绍如何重构。 原始代码及准备 职责独立 去除static关键字 接口添加转换方法 方法合并 使用策略进行重构-Map方式 使用策略进行重构-枚举方式 1.1 原始代码 这是来自于我所经历的项目中一个消息发送的程序,调用者告诉发送程序:类型、接收者及消息的内容,发送程序会根据发送的类型调用不同的发送程序,将待发送的消息发送出去。 目前已知的发送渠道包括:短信、email、微信、钉钉、企业微信, 由于短信、email、微信、钉钉、企业原创 2020-12-26 11:52:35 · 262 阅读 · 0 评论 -
java中5种实现单例模式的方法
单例模式的多种实现方式 1. 为什么会需要单例: 1. 节省内存,单例对象可避免频繁的创建与销毁,带来性能的提升。 2. 对象的共享,例如配制。 2. 实现单例的方式 饿汉式 懒汉式 双重检测 静态内部类 枚举 2.1 单例-饿汉式 public class UniqueIdGenerator { private static final UniqueIdGenerator INSTANCE = new UniqueIdGenerator(); /** 私有化构建函数 */ priva原创 2020-12-12 17:11:48 · 165 阅读 · 1 评论