【设计模式】
文章平均质量分 69
TGB-Earnest
一位热爱英语的人
展开
-
【设计模式-AOP】动态代理-jdk、cglib
前言最近在学习Spring的AOP,学习AOP首先我们需要知道动态代理,所以我就整理了一下关于动态代理的实现方式。过程实现动态代理一共有两种方式,一种是jdk的,一种是cglib的,在了解动态代理之前我们首先来了解静态代理。静态代理ITeacherDaopublic interface ITeacherDao { void teach();}TeacherDaopublic class TeacherDao implements ITeacherDao { public原创 2021-08-16 11:39:57 · 1127 阅读 · 19 评论 -
设计模式——模板方法实战
【前言】 最近项目组在重构,所以都在想业务用什么设计模式合适,我这块的业务是更新和增加往一个表里面,代码差不多都是前面都是获取值,后面进行插入或更新,重构前代码如下:这一块代码是current_active表中添加一条正在进行中的章节数据 @Override public boolean insertCurrentChapter(BigInteger chapterId) { if (StringUtils.isEmpty(chapterId))...原创 2021-04-14 20:43:14 · 188 阅读 · 3 评论 -
Java如何编写单元测试(一)
在机房的时候,老师最重视的就是类之间的设计了,什么高内聚、低耦合等等,当时感觉没有什么用,因为当时才刚开始学,没有敲过几行代码,没有写过几个项目,就算实现功能,能实现了就不错了,当时那还管这个,但是到了一定的阶段之后,发现老师说的这个确实是非常重要的,毕竟我们是靠敲代码吃饭的,虽然当时什么也不太懂,我就感觉老师拿这个很当回事,我就感觉很重要,这就足够了,不一定当时非要学到什么东西。我们写过的代码为了保证它不出错,那么该怎么办呢?也就是我们要对其进行测试,然后让同事code review,那么...原创 2021-02-22 20:50:36 · 925 阅读 · 9 评论 -
【设计模式】-策略模式
一、策略模式定义:策略模式:它定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。二、结构图三、在什么情况下应当使用策略模式1.如果在一个系统里面有许多类,他们之间的区别仅在于他们的行为,那么使用策略模式可以动态地让一个对象在许多行为中选择一种行为。比方说商场促销。2.一个系统需要动态地在集中算法中选择一种,那么这些算法可以包装一个个具体...原创 2019-01-03 21:29:50 · 311 阅读 · 17 评论 -
【设计模式】-简单工厂模式
一、介绍简单工厂模式我们可以理解为负责生产对象的一个类,我们平常编程中,当时用"new"关键字创建一个对象时,此时该类就依赖与这个对象,也就是他们之间的耦合度高,当需求变化时,我们就不得不去修改此类的源码,此时我们可以运用面向对象(OO)的很重要的原则去解决这一问题,该原则就是——封装改变,既然要封装改变,自然也就要找到改变的代码,然后把改变的代码用类来封装,这样的一种思路也就是我们简单工厂模式...原创 2018-12-30 11:28:07 · 335 阅读 · 22 评论 -
【设计模式】-附录A(1)
一.什么是设计模式?“每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复的劳动”二.面向对象,面向过程的区别和联系面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步的实现,使用的时候一个一个依次调用就可以了。面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个...原创 2018-12-26 08:22:32 · 298 阅读 · 22 评论