设计模式
null_null_bug
这个作者很懒,什么都没留下…
展开
-
重构实例-消息发送-职责独立-2
2. 重构-策略模式-职责独立由于这是一个长文,分成了好几章来介绍如何重构。原始代码及准备职责独立去除static关键字接口添加转换方法方法合并使用策略进行重构-Map方式使用策略进行重构-枚举方式现在来分析下代码的问题先从入口MessageSender开始吧,这个类第一眼看上去,觉得很简单吧,就是按类型判断下,执行NotifySendUtils类中的发送逻辑代码。这样子看这个类没有什么大的问题么,再说NotifySendUtils吧,它封装了各种发送渠道的调用方法,还做成了静态方原创 2020-12-26 11:56:18 · 214 阅读 · 0 评论 -
重构实例-消息发送-原始代码及准备-1
1. 重构-策略模式-原始代码及准备由于这是一个长文,分成了好几章来介绍如何重构。原始代码及准备职责独立去除static关键字接口添加转换方法方法合并使用策略进行重构-Map方式使用策略进行重构-枚举方式1.1 原始代码这是来自于我所经历的项目中一个消息发送的程序,调用者告诉发送程序:类型、接收者及消息的内容,发送程序会根据发送的类型调用不同的发送程序,将待发送的消息发送出去。 目前已知的发送渠道包括:短信、email、微信、钉钉、企业微信, 由于短信、email、微信、钉钉、企业原创 2020-12-26 11:52:35 · 210 阅读 · 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 · 121 阅读 · 1 评论