代理模式:代理在RPC、缓存、监控等场景中的应用
48 | 代理模式:代理在RPC、缓存、监控等场景中的应用 前面几节,我们学习了设计模式中的创建型模式。创建型模式主要解决对象的创建问题,封装复杂的创建过程,解耦对象的创建代码和使用代码。 ...
48 | 代理模式:代理在RPC、缓存、监控等场景中的应用 前面几节,我们学习了设计模式中的创建型模式。创建型模式主要解决对象的创建问题,封装复杂的创建过程,解耦对象的创建代码和使用代码。 ...
41 | 单例模式(上):为什么说支持懒加载的双重检测不比饿汉式更优? 从今天开始,我们正式进入到设计模式的学习。我们知道,经典的设计模式有23种。其中,常用的并不是很多。据我的工作经验来看,常用的可能都不到一半。如果随便抓一个程序员,让他说一说最熟悉的3种设计模式,那其中肯定会包含今天要讲的单例模式。 ...
43 | 单例模式(下):如何设计实现一个集群环境下的分布式单例模式? 上两节课中,我们针对单例模式,讲解了单例的应用场景、几种常见的代码实现和存在的问题,并粗略给出了替换单例模式的方法,比如工厂模式、IOC容器。今天,我们再进一步扩展延伸一下,一块讨论一下下面这几个问题: ...
42 | 单例模式(中):我为什么不推荐使用单例模式?又有何替代方案? 上一节课中,我们通过两个实战案例,讲解了单例模式的一些应用场景,比如,避免资源访问冲突、表示业务概念上的全局唯一类。除此之外,我们还学习了Java语言中,单例模式的几种实现方法。如果你熟悉的是其他编程语言,不知道你课后有没有自己去对照着实现一下呢? ...
65 | 迭代器模式(上):相比直接遍历集合数据,使用迭代器有哪些优势? 上一节课,我们学习了状态模式。状态模式是状态机的一种实现方法。它通过将事件触发的状态转移和动作执行,拆分到不同的状态类中,以此来避免状态机类中的分支判断逻辑,应对状态机类代码的复杂性。 ...