![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 92
程序员田同学
一个专职程序员兼业余互联网写手
展开
-
工厂方法在Spring源码中的运用
我们都知道Spring中IOC是使用的工厂模式,但是对于实现细节就一知半解了,今天这篇文章就带大家解读Spring中是如何使用工厂模式的。原创 2022-10-11 15:22:11 · 454 阅读 · 0 评论 -
设计模式之访问者模式
大多数情况下你不需要访问者模式,但当一旦需要访问者模式时,那就是真的需要它了,这是设计模式创始人的原话。可以看出应用场景比较少,但需要它的时候是不可或缺的,这篇文章就开始学习最后一个设计模式——访问者模式。原创 2022-09-30 10:05:48 · 379 阅读 · 0 评论 -
设计模式之模板方法模式
在我们实际开发中,如果一个方法极其复杂时,如果我们将所有的逻辑写在一个方法中,那维护起来就很困难,要替换某些步骤时都要重新写,这样代码的扩展性就很差,当遇到这种情况就要考虑今天的主角——模板方法模式。原创 2022-09-29 09:49:01 · 607 阅读 · 0 评论 -
设计模式之策略模式
在一个收银系统中,如果普通用户、中级会员、高级会员分别对应着不同的优惠策略,常规编程就要使用一系列的判断语句,判断用户类型,这种情况下就可以使用策略模式。原创 2022-09-28 09:13:06 · 284 阅读 · 0 评论 -
设计模式之状态模式
实际开发中订单往往都包含着订单状态,用户每进行一次操作都要切换对应的状态,而每次切换判断当前的状态是必须的,就不可避免的引入一系列判断语句,为了让代码更加清晰直观,我们引入今天的主角——状态模式。原创 2022-09-27 10:10:59 · 278 阅读 · 0 评论 -
设计模式之观察者模式
观察者模式是极其重要的一个设计模式,也是我几年开发过程中使用最多的设计模式,本文首先概述观察者模式的基本概念和Demo实现,接着是观察者模式在Java和Spring中的应用,最后是对观察者模式的应用场景和优缺点进行总结。原创 2022-09-22 15:22:11 · 623 阅读 · 0 评论 -
设计模式之备忘录模式
无论是我们在使用word还是记事本,系统都会为我们提供撤销的功能,这几乎是人人都会使用到的功能,而在我们实际开发中,会不会存在一个很复杂的对象,当更改了其中的某一个属性以后,也提供撤销的功能,可以快速恢复到更新前的状态。提供该功能的模式也正是今天的主题——备忘录模式。原创 2022-09-19 09:18:10 · 252 阅读 · 0 评论 -
设计模式之中介者模式
在我们实际业务中,可能存在多个类之间相互调用,形成了一个复杂的网状结构。这时候就需要有一种模式去“捋顺”他们之间的关系,引出一个中间者让类之间不再相互调用,该模式就是我们今天的主人公——中介者模式。原创 2022-09-15 09:54:26 · 317 阅读 · 0 评论 -
设计模式之迭代器模式
本文介绍设计模式中的迭代器模式,首先通俗的解释迭代器模式的基本概念和对应的四个角色,并根据四个角色举一个典型的实例,为了加强知识的连贯性,我们以Jdk源码集合中使用迭代器模式的应用进一步说明,最后说明迭代器模式的应用场景和优缺点。原创 2022-09-14 09:20:19 · 562 阅读 · 0 评论 -
设计模式之解释器模式
解释器模式字面意思,也即解释某些内容的含义。这种设计模式是实际开发中最不容易用到的。比如SQL解析,符号处理引擎,会用到解释器模式,属于更底层的开发人员才会用到的设计模式。本文就以解释器模式的概念、角色和简单的例子说明解释器模式,读者对这部分内容了解即可。原创 2022-09-06 15:44:48 · 2341 阅读 · 0 评论 -
设计模式之命令模式
本文通过解决老王经常搞错借书人的问题,来引出行为型模式中的命令模式。为了在案例之上理解的更加透彻,我们需要了解命令模式在源码中的应用。最后指出命令模式的应用场景和优缺点。原创 2022-08-30 09:12:39 · 173 阅读 · 0 评论 -
设计模式之责任链模式
本文通过图书馆管理系统中,用户名校验、密码校验、需要增加问题,每次都要增加if判断语句,将其改用责任链模式进行链式调用,为了让代码更加的优雅,我们使用之前学过的建造者模式就代码进行改造。接着我们会介绍责任链模式在我们常用的框架中的运用,最后是责任链模式的优缺点和应用场景。原创 2022-08-24 10:34:47 · 255 阅读 · 0 评论 -
设计模式之享元模式
本文通过优化买票的重复流程来说明享元模式,为了加深对该模式的理解,会以String和基本数据类型的包装类对该模式的设计进一步说明。原创 2022-08-16 14:41:02 · 184 阅读 · 0 评论 -
设计模式之外观模式
本文通过老王改造小王公司的整体架构来说明外观模式,所谓的外观模式其实就是在各种复杂的子系统中抽象出来一个接口,隐藏具体的实现细节,调用方调用时只需要调用接口即可。为了加深理解我们会选出外观模式在源码中的应用进行重点的介绍,最后是我对设计模式学习过程中的一些思考。...原创 2022-08-15 15:25:12 · 188 阅读 · 0 评论 -
设计模式之装饰器模式
本文由老王将建好的书房计划请小王来帮忙,小王却想谋权篡位,老王通过教育他引出装饰器设计模式,第二部分针对老王提出的建设性意见实现装饰器模式,第三部分针对装饰器模式在Jdk中的IO、Spring中的缓存管理器、Mybatis的运用来加强我们的理解,第四部分说明装饰器模式和代理模式的区别及他们各自的应用场景。...原创 2022-08-10 14:58:29 · 135 阅读 · 0 评论 -
设计模式之组合模式
本文通过老王和小王探讨书房、书架、各类书的管理问题,引出结构型设计模式家族中的一个重要成员——组合模式,本文会给予两种组合模式的典型代码实现,为了加深理解会在第三部分应用中介绍组合模式在源码中的实际运用,最后总结该设计模式学习后的一些思考。...原创 2022-08-09 11:48:16 · 121 阅读 · 0 评论 -
设计模式之桥接模式
本文通过老王和小王买车,引出设计模式中的结构型设计之桥接模式,接着说明设计型模式的概念和代码实现,为了加深理解,会说明适配器设计模式在JDBC中的应用,最后谈谈桥接模式和适配器模式的总结。...原创 2022-08-05 15:46:16 · 118 阅读 · 0 评论 -
设计模式之适配器模式
本文通过老王使用纸质书籍阅读小王使用电子书籍的故事,详细说明设计模式中的结构型设计模式之适配器模式,分别对对象适配器和类适配器代码实现,最后为了加深理解,会列举适配器设计模式在JDK和Spring源码中的应用。...原创 2022-08-04 15:40:45 · 217 阅读 · 0 评论 -
设计模式之代理模式
本文由老王出租房子引出——代理设计模式,将从最简单的静态代理实现开始,后延伸使用jdk实现动态代理,最后扩展到Cglib实现动态代理。为了更深入理解代理模式,我们会对实际应用中的典型案例进行介绍,包括在Spring和Mybatis中的应用。...原创 2022-08-03 10:53:54 · 91 阅读 · 0 评论 -
设计模式之建造者模式
本文由老王家组装电脑引出——建造者设计模式,详细介绍建造者模式的基本概念和实现代码,为了便于理解建造者模式,我们会对实际应用中的典型案例进行介绍。最后对比工厂模式和建造者模式之间的区别,让我们在实际使用时能更加灵活的选择设计模式。...原创 2022-08-01 15:39:43 · 557 阅读 · 0 评论 -
设计模式之单例和原型
今天这篇文章我们来学习创建型设计模式的另外两个孪生兄弟,单例和原型,其中原型设计模式中我们深入到JVM的内存模型,最后顺便谈谈Java中的值传递和引用传递。原创 2022-07-29 15:39:51 · 177 阅读 · 0 评论 -
设计模式之工厂方法和抽象工厂
全网最详细的工厂设计模式,本文主要是创建型设计模式中的工厂方法和抽象工厂,先由传统实现方式引出问题,接着对代码改进到简单工厂,后扩展到工厂方法,最后是抽象工厂模式,文中包括概念理解和相关实现代码。...原创 2022-07-28 16:49:27 · 398 阅读 · 0 评论 -
设计模式概述
成为一名优秀的软件开发工程师,设计模式的重要性不言而喻,本章节是对设计模式的前置知识概述,涉及概念性较多,读者可在设计模式学习过程中参阅本文档。原创 2022-07-27 16:46:51 · 129 阅读 · 0 评论