![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 69
卡布奇诺-海晨
《微服务实战》专栏是本人的实战经验总结,《Spring家族及微服务系列》专注Spring、SpringMVC、SpringBoot、SpringCloud系列、Nacos等源码解读、热门面试题、架构设计等。全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。有研究MyBatis的经验,设计模式,基本算法,也有相关的博文输出。未来时间允许情况下,推出更多的关于框架源码的知识以及结合工作经验的沉淀。程序员这条路一开始走对了后面就轻松些,作为过来人,有经验感受在博文透露。程序员这条路最好有个引路人,每个人都可以努力,但是方向不对努力白费。某音有视频教程(某马/某千等都是上万价格)
展开
-
代理模式与装饰模式到底哪家强
设计模式这个东西,作为程序员还是需要掌握一些的。小到软件中级设计师考试、面试、读框架源码,大到日常开发、系统架构等都会碰到。而笔者也是早在上大学的那段时间,已经对设计模式有了一知半解的认识。 JDK动态代理,在源码的世界里扮演的角色格外重要,如MyBatis的日志模块、binding模块等,Spring的AOP等。在日常开发中,你也可以捕捉到它的身影。使用代理的一个重要目标是控制对被代理类的访问,可以在代理类中做一些前置/后置处理,如:缓存、日志、事务、权限等等。............原创 2022-06-21 17:13:03 · 267 阅读 · 0 评论 -
MyBatis上刀山下火海的七虎上将之工厂方法模式
一、工厂方法模式1、多工厂模式架构图注意:绿色虚线箭头为实现关系、白色虚线箭头为依赖关系、平行四边形实线箭头为关联关系、蓝色实线箭头为继承关系。同时简单说明依赖和关联关系:在Java语言中,依赖关系体现为局域变量、方法的返回值/入参,或者对静态方法的调用等。而关联关系一般把关联的类作为自己的成员变量。2、工厂方法模式定义Define an interface for creating an object, but let subclasses decide which class t原创 2022-03-24 15:55:09 · 895 阅读 · 0 评论 -
迪米特法则
一、迪米特法则的定义 迪米特法则(Law of Demeter, LoD)也称为最少知识原则(Least Knowledge Principle, LKP),它们的意思为:一个对象应该对其他对象有最少的了解。通俗的讲,一个类对自己需要耦合或调用的类知道得最少,你(调用的类的)的内部是多么复杂都和我没有关系,那是你的事情,我只关心你提供的public方法,你提供我就调用,其他一概不关心。二、我的知识你知道的越少越好1、只和朋友交流迪米特法则还有一个英文解释:Only talk to yo..原创 2022-01-09 12:11:08 · 1600 阅读 · 0 评论 -
设计模式搭配使用之扣款3
回顾类图设计原创 2021-10-06 19:58:27 · 308 阅读 · 0 评论 -
设计模式搭配使用之扣款2
回顾 上一篇文章策略稍微封装了一下,策略的使用并没有完全面向接口编程,它把所有的策略类都暴露出去了。如果用户要使用策略,她还得new一下策略类。想到new,创建模式就得派上用场,如工厂方法模式、建造者模式等。由于我们需要的策略类并没有那么复杂,故采用工厂方法模式。工厂方法模式,通过类的全限定名利用反射获取类的实例。那么类的全限定名该怎么维护呢?可以通过读取配置的方式,还可以枚举,完成映射,实现策略类的隐藏。然后用工厂方法模式根据映射创建策略对象。类图设计策略枚举/** *...原创 2021-10-06 16:39:41 · 301 阅读 · 0 评论 -
设计模式搭配使用之扣款1
现在有这样的场景:固定金额: 固定金额是指员工不能体现的金额,这部分金额只能用来特定消费,即员工日常必须的消费。如:公司食堂内吃饭、理发、健身等。自由金额: 自由金额是可以体现的,当然也可以用于消费。每个月初,总部会为每个员工的IC卡中打入固定的金额,然后提倡大家在集团内的商店消费。策略设计 在实际的系统开发中,架构设计采用的是一张IC卡绑定两个账户:固定账户和自由账户。现对其设计两种扣款策略扣款策略一: 该类型的扣款策略会对IC卡上的两个金额产生影响...原创 2021-10-04 22:38:45 · 806 阅读 · 0 评论