
Java 设计模式详解
文章平均质量分 96
1、java设计模式定义的使用方法
2、设计模式的使用场景及在业务中的使用
3、在源码中的使用
设计模式实战的狂热爱好者
程序员 jet_qi
白龙马服务平台员工,擅长并发开发(juc,netty),分布式(springboot+MQ,rpc,ES,dubbo),擅长商品域,财务域业务知识,是设计模式实战的狂热者。
博客主要分享内容:职场经验分享、自学教程、面试真题解析、面试经验分享、技术专题深度解析等。
关于我的文章:那些你很容易就能看得懂的文章,是不会让你显得与众不同的,我会保证所写的每一句话,每一行代码都经过了认真的推敲、仔细的斟酌,希望大家能有所收获。
吃不了学习的苦,就得吃生活的苦,别在最应该努力的年纪躺平
展开
-
JAVA设计模式--从入门到精通
Builder设计模式欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用M...原创 2021-06-29 16:25:38 · 868 阅读 · 0 评论 -
DDD领域驱动开发第2讲:领域驱动开发在货代订单业务的实践
本文是DDD领域驱动开发第2讲,先讲解当前业务存在的问题,什么是DDD,为啥需要使用DDD解决现有业务问题,DDD让技术主动理解业务,通过领域模型将可以描述各个业务领域之间的关系,最后讲解领域驱动开发在货代订单的实践。原创 2025-02-19 13:22:59 · 142 阅读 · 0 评论 -
JAVA设计模式第一讲:设计原则
设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。本文以面试题作为切入点,介绍了设计模式的常见问题。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚能解决什么问题。本文是设计模式第一讲:设计原则设计模式从入门到精通:设计原则推荐书籍1、学习设计模式的意义?2、如何编写高质量代码2.1 设计模式的目的(高内聚,松耦合)2.2 如何写出高质量代码3、常用的设计原则(SOLID 7大原则)4、如何做到对扩展开放、对修改关闭?深入理解开闭原则5、如.原创 2021-12-17 09:00:00 · 785 阅读 · 0 评论 -
JAVA设计模式第二讲:创建型设计模式
设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。本文以面试题作为切入点,介绍了设计模式的常见问题。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚能解决什么问题。本文是第二篇:创建型设计模式设计模式从入门到精通:创建型设计模式7、常用的设计模式(代表了最佳实践 共23种,常用的14种)8、创建型设计模式8.1、单例设计模式一共有几种实现方式?请分别用代码实现,并说明各个实现方式的优点和缺点?8.2、什么时候该用工厂模式?相对于直接 new 来.原创 2021-12-17 10:00:00 · 607 阅读 · 0 评论 -
JAVA设计模式第三讲:结构型设计模式
设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。本文以面试题作为切入点,介绍了设计模式的常见问题。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚能解决什么问题。本文是第三篇:结构型设计模式设计模式从入门到精通9、结构型设计模式9.1、代理模式 Proxy9.2、桥接模式(不常用)9.3、装饰者模式 **Decorator**(BufferedInputStream)9.4、适配器设计模式 Adapter代理、桥接、装饰器、适配器 4 种设计.原创 2021-12-17 11:00:00 · 902 阅读 · 0 评论 -
JAVA设计模式第四讲:行为型设计模式
设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。本文以面试题作为切入点,介绍了设计模式的常见问题。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚能解决什么问题。本文是设计模式第四讲:行为型设计模式设计模式从入门到精通:行为型设计模式10、行为型设计模式10.1、观察者模式(也称发布订阅模式,在开发常用)10.2、模板方法模式10.3、策略模式:就是将几个类中公共的方法提取到一个新的类中,从而使扩展更容易,保证代码的可移植性10.4、责任链模.原创 2022-01-10 09:00:00 · 774 阅读 · 0 评论 -
JAVA设计模式第五讲:设计模式在 Google Guava 的应用
摘要:本文先介绍设计模式概念及应用场景,然后讲解设计模式在 Google Guava 中的应用,分析其原理;最后分析在使用过程中可以优化的地方文章目录1、设计模式概念及使用场景2、设计模式在 Guava 中的使用3、可以优化的地方参考文献1、设计模式概念及使用场景设计模式是什么:设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚各种模式能解决什么问题。总体来说设计模式可以分为三大类:使用场.原创 2022-02-08 15:51:09 · 581 阅读 · 0 评论 -
JAVA设计模式第七讲:设计模式在 Spring 源码中的应用
设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。本文以面试题作为切入点,介绍了设计模式的常见问题。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚能解决什么问题。本文是第七篇:设计模式在 Spring 源码中的应用。原创 2023-09-06 22:15:58 · 801 阅读 · 0 评论 -
设计模式第八讲:常见重构技巧 - 去除多余的if else
最为常见的是代码中使用很多的if/else,或者switch/case;如何重构呢?方法特别多,本文是设计模式第八讲,带你学习其中的技巧。原创 2023-08-26 23:09:58 · 1178 阅读 · 0 评论 -
设计模式第九讲:常见重构技巧 - 去除不必要的!=
项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?本文是设计模式第九讲,讲解常见重构技巧:去除不必要的!原创 2023-08-27 19:31:53 · 933 阅读 · 0 评论 -
JAVA设计模式第十讲:SPI - 业务差异解决方案
我们需要在不修改源代码的情况下,动态为程序提供一系列额外的特性。首先想到的是Spring的AOP技术来构建应用插件,但是在Java自带的插件中,就有完整的实现。SPI(Service Provider Interface),是JDK内置的一种 服务提供发现机制,可以用来启用框架扩展和替换组件,主要是被框架的开发人员使用。本文是设计模式第十讲,SPI框架设计。原创 2023-09-07 19:38:26 · 800 阅读 · 0 评论 -
JAVA设计模式第十二讲:大厂实践 - 美团: 设计模式二三事
设计模式是众多软件开发人员经过长时间的试错和应用总结出来的,解决特定问题的一系列方案。现行的部分教材在介绍设计模式时,有些会因为案例脱离实际应用场景而令人费解,有些又会因为场景简单而显得有些小题大做。本文是设计模式第十二讲,会结合在美团金融服务平台设计开发时的经验,结合实际的案例,并采用“师生对话”这种相对诙谐的形式 去讲解三类常用设计模式的应用。希望能对想提升系统设计能力的同学有所帮助或启发。原创 2023-08-25 23:26:01 · 986 阅读 · 0 评论 -
设计模式第十三讲:编写可读代码的艺术
编写可读代码是极为重要的,编程有很大一部分时间是在阅读代码,不仅要阅读自己的代码,而且要阅读别人的代码。因此,良好的代码能够大大提高编程效率。可读性良好的代码往往会让代码架构更好,因为程序员更愿意去修改这部分代码,而且也更容易修改。本文是设计模式第十三讲,讲解编写可读代码的艺术。原创 2023-08-28 10:12:28 · 200 阅读 · 0 评论 -
设计模式第十五讲:重构 - 改善既有代码的设计
重构是对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那就先重构这个程序。重构需要以微小的步伐修改程序,如果重构过程发生错误,很容易就能发现错误。本文是设计模式第十四讲,使用重构来改善既有代码的设计。原创 2023-08-29 09:00:00 · 493 阅读 · 0 评论 -
项目实战第十五讲:使用职责链模式实现类目属性规则引擎(超级复杂)
商品中心规则引擎梳理优化需求使用了设计模式1、梳理规则引擎业务逻辑2、优化规则,减小规则引擎执行的rt表1、商品属性表表2、类目属性表4.1.2、项目整体流程图首先在商品发布时,从类目属性模块渲染发布页然后商品在创建或编辑时,执行规则引擎,校验入参的合法性,同时也会修正入参数据在商品查询时,对出参数据进行订正处理,透出符合要求的数据商品审核时,对审核数据进行合法性校验可以分为以下几个步骤–》组装用户信息–》校验拓展信息(分为精度校验和值域范围校验)–》使用了TreeRangeSet这个数原创 2022-06-25 12:01:50 · 710 阅读 · 0 评论 -
项目实战第五讲:使用模板模式实现开放平台代码重构
项目实战第五讲:开放平台代码小重构1/2/原创 2022-02-27 00:13:10 · 615 阅读 · 0 评论 -
JAVA-stateless4j StateMachine从入门到实战
JAVA-stateless4j StateMachine从入门到实战状态机第一次接触是在研究生课程《计算理论基础》上,里面有一章是讲解-有穷状态机,秦绪佳老师讲解得极其晦涩难懂。有限状态机是一种用来进行对象行为建模的工具=,其作用主要是描述对象在它的生命周期内所经历的状态序列,以及如何响应来自外界的各种事件。在电商场景(订单、物流、售后)、社交(IM消息投递)、分布式集群管理(分布式计算平台任务编排)等场景都有大规模的使用。在商品中心使用场景中,主要涉及审核相关场景:如商品、品牌、SPU在某些事件下的原创 2021-06-30 16:53:04 · 2307 阅读 · 0 评论