设计模式之装饰器模式

2022-01-29
阅读 5 分钟
1.1k
装饰器模式有一个特点,那就是可以对原始类嵌套使用多个装饰器。为了满足这个应用场景,在设计的时候,装饰器类需要跟原始类继承相同的抽象类或者接口。
封面图

设计模式之桥接模式

2022-01-27
阅读 2 分钟
828
在 GoF 的《设计模式》一书中,桥接模式被定义为:“将抽象和实现解耦,让它们可以独立变化。”定义中的“抽象”,指的并非“抽象类”或“接口”,而是被抽象出来的一套“类库”,它只包含骨架代码,真正的业务逻辑需要委派给定义中的“实现”来完成。而定义中的“实现”,也并非“接口的实现类”,而是一套独立的“类库”。
封面图

设计模式之代理模式

2022-01-26
阅读 5 分钟
1.3k
代理模式是一种结构型设计模式。结构型模式主要总结了一些类或对象组合在一起的经典结构,这些经典的结构可以解决特定应用场景的问题。结构型模式包括:代理模式、桥接模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式。
封面图

设计模式之原型模式

2022-01-25
阅读 1 分钟
845
如果 对象的创建成本比较大,而 同一个类的不同对象之间差别不大(大部分字段都相同),在这种情况下,我们可以利用对已有对象(原型)进行复制(或者叫拷贝)的方式来创建新对象,以达到节省创建时间的目的。
封面图

设计模式之建造者模式

2022-01-25
阅读 2 分钟
877
使用场景对象的构建有很多必填参数,如果使用构造函数会导致参数列表过长难以使用构造参数之间有依赖关系,比如设置了minAge就必须设置maxAge,且minAge小于等于maxAge类的属性一旦被创建就不可变(不暴力set()方法)类图Person类包含了一个内部类Builder,负责对外暴露设置属性的方法,这些方法可以包含校验和初始化规...
封面图

设计模式之单例模式

2022-01-24
阅读 3 分钟
774
单例设计模式理解起来非常简单。一个类只允许创建一个对象(或者实例),那这个类就是一个单例类,这种设计模式就叫单例模式。使用场景处理资源访问冲突下面的示例中如果每个类都创建一个 Logger 实例,就可能造成日志内容被覆盖的情况。 {代码...} 表示全局唯一类如果有些数据在系统中只应保存一份,那就比较适合设计为...
封面图

设计模式之工厂模式

2022-01-24
阅读 5 分钟
830
工厂模式可以细分为:简单工厂、工厂方法和抽象工厂三种模式使用场景总体而言工厂模式的使用场景分为两种:单个对象的创建过程比较复杂,如需要做复杂初始化操作的对象需要根据不同的类型创建不同的对象针对细分的三种模式,使用场景又可以区分:当对象的创建逻辑简单,通常只需要new一下就可以,此时可以考虑简单工厂模...
封面图

设计模式之设计原则

2022-01-14
阅读 3 分钟
1.2k
SOLID原则是由五个设计原则组成:单一职责原则(SRP),开闭原则(OCP),里式替换原则(LSP),接口隔离原则(ISP),依赖反转原则(DIP)
封面图