会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Loading
Tom弹架构
不只做一个技术者,更要做一个思考者 《Spring 5核心原理与30个类手写实战》、 《Netty 4核心原理与手写RPC框架实战》、 《设计模式就该这样学》作者, 『 Tom弹架构 』可获取更多技术干货!
博客园
首页
新随笔
联系
管理
上一页
1
2
3
4
5
6
7
下一页
2021年11月12日
万字长文手写数据库连接池,让抽象工厂不再抽象
摘要: 本文节选自《设计模式就该这样学》 1 关于产品等级结构和产品族 在讲解抽象工厂之前,我们要了解两个概念:产品等级结构和产品族,如下图所示。 上图中有正方形、圆形和菱形3种图形,相同颜色、相同深浅的代表同一个产品族,相同形状的代表同一个产品等级结构。同样可以从生活中来举例,比如,美的电器生产多种家用电
阅读全文
posted @ 2021-11-12 13:39 Tom弹架构
阅读(1029)
评论(0)
推荐(1)
2021年11月11日
全面通透深入剖析工厂方法模式
摘要: 本文节选自《设计模式就该这样学》 1 工厂方法模式的应用场景 工厂方法模式主要适用于以下应用场景。 (1)创建对象需要大量重复的代码。 (2)客户端(应用层)不依赖产品类实例如何被创建、实现等细节。 (3)一个类通过其子类来指定创建哪个对象。 2 工厂方法模式的UML类图 工厂方法模式的UML类图如
阅读全文
posted @ 2021-11-11 12:46 Tom弹架构
阅读(1113)
评论(0)
推荐(1)
2021年11月10日
彻底说透简单工厂那些你没有关注过的细节
摘要: 本文节选自《设计模式就该这样学》 1 使用简单工厂模式封装产品创建细节 接下来看代码,还是以创建一门网络课程为例。假设有Java架构、大数据、人工智能等课程,已经形成了一个生态。我们可以定义一个课程标准ICourse接口。 public interface ICourse { /** 录制视频 */
阅读全文
posted @ 2021-11-10 14:01 Tom弹架构
阅读(899)
评论(2)
推荐(1)
2021年11月9日
你以为委派模式很神秘,其实你每天都在用
摘要: 本文节选自《设计模式就该这样学》 1 使用委派模式模拟任务分配场景 我们用代码来模拟老板给员工分配任务的业务场景。 首先创建IEmployee员工接口。 public interface IEmployee { void doing(String task); } 创建员工EmployeeA类。 p
阅读全文
posted @ 2021-11-09 12:09 Tom弹架构
阅读(658)
评论(0)
推荐(1)
2021年11月8日
使用桥接模式设计复杂的消息系统
摘要: 本文节选自《设计模式就该这样学》 举个例子,我们在平时办公的时候经常通过邮件消息、短信消息或者系统内消息与同事进行沟通。尤其在走一些审批流程的时候,我们需要记录这些过程以备查。根据类型来划分,消息可以分为邮件消息、短信消息和系统内消息。但是,根据紧急程度来划分,消息可以分为普通消息、加急消息和特急消
阅读全文
posted @ 2021-11-08 16:11 Tom弹架构
阅读(935)
评论(2)
推荐(4)
2021年11月7日
搞懂钩子方法和模板方法,看完这篇就够了
摘要: 本文节选自《设计模式就该这样学》 通常的模板方法模式中会设计一个abstract的抽象方法,交给它的子类实现,这个方法称为模板方法。而钩子方法,是对于抽象方法或者接口中定义的方法的一个空实现,也是模板方法模式的一种实现方式。 1 模板方法模式中的钩子方法 我们以网络课程创建流程为例:发布预习资料 →
阅读全文
posted @ 2021-11-07 17:49 Tom弹架构
阅读(1418)
评论(0)
推荐(1)
2021年11月5日
使用策略模式重构电商折扣和支付场景
摘要: 本文节选自《设计模式就该这样学》 1 使用策略模式实现促销优惠方案选择 大家都知道,咕泡学院的架构师课程经常会有优惠活动,优惠策略有很多种可能,如领取优惠券抵扣、返现促销、拼团优惠等。下面用代码来模拟,首先创建一个促销策略的抽象PromotionStrategy。 /** * 促销策略抽象 * Cr
阅读全文
posted @ 2021-11-05 14:31 Tom弹架构
阅读(1164)
评论(0)
推荐(1)
2021年11月4日
没有性能瓶颈的无限级菜单树应该这样设计
摘要: 本文节选自《设计模式就该这样学》 1 使用透明组合模式实现课程目录结构 以一门网络课程为例,我们设计一个课程的关系结构。比如,我们有Java入门课程、人工智能课程、Java设计模式、源码分析、软技能等,而Java设计模式、源码分析、软技能又属于Java架构师系列课程包,每个课程的定价都不一样。但是,
阅读全文
posted @ 2021-11-04 13:02 Tom弹架构
阅读(1136)
评论(3)
推荐(2)
2021年11月3日
如何快速搞定第三方登录且易扩展?
摘要: 本文节选自《设计模式就该这样学》 1 使用类适配器重构第三方登录自由适配 我们使用适配模式来实现一个实际的业务场景,解决实际问题。年纪稍微大一点的小伙伴一定经历过这样的过程。很早以前开发的老系统应该都有登录接口,但是随着业务的发展和社会的进步,单纯地依赖用户名密码登录显然不能满足用户需求。现在,大部
阅读全文
posted @ 2021-11-03 13:38 Tom弹架构
阅读(753)
评论(0)
推荐(1)
2021年11月2日
一文读懂深克隆与浅克隆的关系
摘要: 本文节选自《设计模式就该这样学》 1 分析JDK浅克隆API带来的问题 在Java提供的API中,不需要手动创建抽象原型接口,因为Java已经内置了Cloneable抽象原型接口,自定义的类型只需实现该接口并重写Object.clone()方法即可完成本类的复制。 通过查看JDK的源码可以发现,其实
阅读全文
posted @ 2021-11-02 18:21 Tom弹架构
阅读(424)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
下一页
公告