每天一个设计模式
文章平均质量分 72
w7486
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
常用设计模式与七大设计原则脑图
原创 2022-01-12 20:07:58 · 287 阅读 · 2 评论 -
设计模式-建造者模式
目录 一.什么是建造者模式 二.代码演示 一.什么是建造者模式 建造者模式的优点: 封装性好,创建和使用分离 扩展性好,建造类之间独立、一定程度上解耦 建造者模式的缺点: 产生多余的Builder对象 产品内部发生变化,建造者都要修改,成本较大 建造者模式的适用场景: 适用于创建对象需要很多步骤,但是步骤的顺序不一定固定。 如果一个对象有非常复杂的内部结构(很多属性) 把复杂对象的创建和使用分离 二.代码演示 用建造者的模式给一个学生类赋值 Student类: @Data pu原创 2022-01-09 23:04:09 · 476 阅读 · 1 评论 -
设计模式-原型模式
目录 一.什么是原型模式 二.浅克隆 三.序列化深克隆 四.递归深克隆 一.什么是原型模式 原型模式(Prototype Pattern)是指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 调用者不需要知道任何创建细节,不调用构造函数 属于创建型模式 优点: 当对象的赋值过程比较繁琐时使用原型模式非常的方便 缺点: 必须配备克隆((或者可拷贝)方法 对克隆复杂对象或对克隆出的对象进行复杂改造时,易带来风险。 深拷贝、浅拷贝要运用得当 原型模式的适用场景...原创 2022-01-09 11:20:54 · 750 阅读 · 0 评论 -
设计模式-策略模式
目录 一.什么是策略模式 二.代码演示 一.什么是策略模式 策略模式(Strategy Pattern)又叫也叫政策模式(PolicyPattern),它是将定义的算法家族、分别封装起来,让它们之间可以互相替换,从而让算法的变化不会影响到使用算法的用户。 可以避免多重分支的if...else...和switch语句 属于行为型模式。 比如当我们支付的时候一般会有两种选择一种是微信一种是支付宝,这就是一种策略 策略模式的优点: 策略模式符合开闭原则。 避免使用多重条件转移语句,...原创 2022-01-08 18:41:09 · 545 阅读 · 0 评论 -
设计模式-委派模式
目录 一.什么是委派模式 二.代码演示 一.什么是委派模式 委派模式(Delegate Pattern)又叫委托模式。它的基本作用就是负责任务的调度和任务分配,将任务的分配和执行分离开来。可以看做是一种特殊情况下的静态代理的全权代理。 不属于GOF 23种设计模式之一。 属于行为型模式。 委派模式的优点: 通过任务委派能够将一个大型的任务细化,然后通过统一管理这些子任务的完成情况实现任务的跟进,能够加快任务执行的效率。 委派模式的缺点: 任务委...原创 2022-01-08 14:02:35 · 888 阅读 · 0 评论 -
设计模式-代理模式
目录 一.什么是代理模式 二.代理模式的作用 三.静态代理 四.Jdk动态代理 五.Cglib动态代理 一.什么是代理模式 代理模式(Proxy Pattern)是指为其他对象提供一种代理,以控制对这个对象的访问。 代理对象在客服端和目标对象之间起到中介作用。 属于结构型设计模式。 二.代理模式的作用 设想这样的一个场景:我们想请杰伦演出,但是杰伦只唱歌别的琐碎的业务不想做,这时候还怎么办?这时候当然是需要找一个代理,来帮杰伦谈薪资,安排行程,买火车票。这就相相当与我们的代...原创 2022-01-06 22:50:41 · 1187 阅读 · 0 评论 -
设计模式-单例模式
目录 一.什么是单例模式 二.饿汉式单例 三.懒汉式单例 四.注册式单例 五.ThreadLocal单例 六.如何防止被反射和反序列化破坏 一.什么是单例模式 单例模式(Singleton Pattern))是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。 隐藏其所有的构造方法。 属于创建型模式。 单例模式的优点 在内存中只有一个实例,减少了内存开销。 可以避免对资源的多重占用。 设置全局访问点,严格控制访问。 单例模式的缺点 没有接口,扩展困难...原创 2022-01-05 19:30:34 · 429 阅读 · 0 评论 -
设计模式-工厂模式
目录 一.简单工厂模式 1.什么时简单工厂模式 2.对简单工厂模式的理解 3.代码演示 二.工厂方法模式 1.什么时工厂方法模式 2.对工厂方法模式的理解 3.代码演示 三.抽象工厂 1.什么抽象工厂 2.对抽象工厂的理解 3.代码演示 一.简单工厂模式 1.什么时简单工厂模式 简单工厂模式(Simple Factory Pattern)是指由一个工厂对象决定创建出哪一种产品类的实例。 属于创建型模式,但它不属于GOF,23种设计模式。 2.对简单工厂模式的...原创 2022-01-04 22:58:03 · 386 阅读 · 0 评论 -
七大软件设计原则
一.开闭原则 定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。用抽象构建框架,用实现扩展细节. 优点:提高软件系统的可复用性及可维护性 代码演示: 课程接口ICourse: public interface ICourse { public Integer getId(); public String getName(); public Double getPrice(); } 现在有个java课程 所以要实现这个接口 public class Ja原创 2022-01-04 19:18:54 · 447 阅读 · 0 评论
分享