靡不有初,鲜克有终
03
12
中介者模式 中介者模式
定义中介者?其实生活中大家再熟悉不过了这个词,我们熟悉的黄牛、房产中介等就是充当中介的角色,将我们的买票、购房等的需求自身消化再代为办理。又比如说中间件,马老师很忙,不能来一个人有事就直接找马老师对吧,所以要找一个中介,客户来了直接找中间人
2022-03-12
12
观察者模式 观察者模式
定义观察者模式(Observer Pattern)也称发布订阅模式。 观察者模式的英文定义如下: Define a one-to-many dependency between objects so that when one ob
2022-03-12
11
迭代器模式 迭代器模式
迭代器模式(Iterator Pattern)又称为游标(Cursor)模式,是最常被使用的几个模式之一,被广泛地应用到 Java 的 API 中。例如,Java 的集合(Collection)框架中,就广泛使用迭代器来遍历集合中的元素。
2022-03-11
11
解释器模式 解释器模式
解释器模式,这个模式我觉得是这些模式中最不好理解的模式,解释器模式是用来干啥的呢?比如说我们有一段英文或者一段公式,我们需要知道其中表达的意思到底是啥?(假如我们起初并不理解)也就是说,我们需要一个”解释人”,该角色就是我们的联络官或者叫做
2022-03-11
11
命令模式 命令模式
定义命令模式(Command Pattern)又称为行动(Action)模式或交易(Transaction)模式。 命令模式的英文定义是: Encapsulate a request as an object, thereby le
2022-03-11
09
代理模式 代理模式
定义代理模式的定义其实比较简单:代理模式给某对象提供一个代理对象,由代理对象来控制对原对象的引用。生活中比较常见的代理模式的应用比如:火车票代购、代办保险、UU 跑腿、武侠片中的替身、nginx 反向代理等等这种类似于中介的模式统统可以归于
2022-03-09
09
享元模式 享元模式
定义这节中我们将介绍一种新的结构型模式——享元模式 (Flyweight Pattern),Flyweight 模式是以共享的模式来支持大量细粒度对象的复用。听起来可能有点绕,Java 中的 String 就是享元模式的一个应用: S
2022-03-09
09
装饰器模式 装饰器模式
定义本节我们要学习的设计模式叫做——装饰器模式,何为装饰器模式? 假如我们现在有一个视频 video 需要播放,如果在 video 播放上加上弹幕,那我们的视频播放还是之前的播放,只不过在原有播放功能上加入了弹幕功能,同样地,我们可以
2022-03-09
09
组合模式 组合模式
定义这节我们将介绍一种全新的设计模式——组合模式。想起“组合”二字,自然联想到了很多,比如:文件和文件夹、容器和组件、火车和车厢、大树的枝干和叶子等等,大自然中组合的例子数不胜数。 什么是组合关系?组合关系:部分与整体的关系,有了整
2022-03-09
09
Redis + Lua脚本实现服务限流 Redis + Lua脚本实现服务限流
保障服务稳定的三大利器:熔断降级、服务限流和故障模拟。今天和大家谈谈限流算法的几种实现方式,本文所说的限流并非是Nginx层面的限流,而是业务代码中的逻辑限流。 限流的作用由于 API 接口无法控制调用方的行为,因此当遇到瞬时请求量激
2022-03-09
4 / 6