设计模式

服务接口API限流

什么是限流? 为什么要限流? 限流就是在一定时间内控制服务接口的请求量(qps) 通过限流,我们可以很好地控制系统的qps,从而达到保护系统或者接口服务器稳定的目的等 限流的常用算法 1. 计数器法 计数器法是限流...

代理模式 Idea

代理模式 Proxy 为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用 案例 创建一个Subject接口类 pa...

抽象工厂模式 Idea

抽象工厂模式 AbstractFactory 抽象工厂模式其实就是多个工厂方法模式 AbstractFactory抽象工厂类 下述代码是一个抽象工厂类,它的职责是定义每个工厂要实现的功能,有n个产品族,在抽象工厂类中就应该有n个创建...

建造者模式 Idea

建造者模式 Builder 指将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示 (表示好特么抽象,看不懂) 使用场景 当一个类的构造函数参数个数超过4个,而且这些参数有些是可选的参数,考虑使...

工厂模式 Idea

工厂模式 Factory 工厂模式可以根据传入的参数不同返回不同的实例 3.1 简单工厂模式 产品接口类 package com.learn.Factory.SimpleFactory; public interface Product { } 具体的产品A类 package com.learn.Fac...

策略模式 Idea

策略模式 Strategy 策略模式是一种行为型模式,它将对象和行为分开,将行为定义为 一个行为接口 和 具体行为的实现。策略模式最大的特点是行为的变化,行为之间可以相互替换。每个if判断都可以理解为就是一个策略...