设计模式
文章平均质量分 61
小小大侠客
用技术改变世界,用代码改变命运!
展开
-
责任链模式实现规则校验
如果现在需要增加一种校验(如增加订单物流的校验),此时我们只需要增加一个业务的实现类,然后在spring的配置将这个业务实现类加入到责任链逻辑上就可以了。我们使用责任链模式实现对订单中参数的校验,首先校验订单id是否为空,然后校验下单人是否为空,最后检验收获地址是否为空。(3)责任链模式使用的典型场景是多个对象处理同一个请求,如OA审批、参数的校验、日志记录器链等等。(1)需要保证责任链的结构清晰、避免创建过长的链,进而提升执行的性能。(3)具体的检验逻辑(继承公共逻辑)(2)责任链中的公共逻辑的抽取。原创 2024-09-19 14:34:44 · 294 阅读 · 0 评论 -
设计模式之责任链
设计模式之责任链原创 2022-08-24 14:59:58 · 174 阅读 · 0 评论 -
在不加锁的情况下,实现一个线程安全的单例模式
第一、单例模式的几种实现方式a.饿汉式(线程安全,调用效率高,但是不能延时加载)/** * 单例模式 * @author shixiangcheng * 2019-07-21 */public class Singleton { private static final Singleton singleton=new Singleton(); private Sing...原创 2019-12-20 10:31:03 · 966 阅读 · 0 评论 -
设计模式之装饰者模式
1.什么是装饰者模式装饰者模式就是是动态地将责任附加到对象上,要扩展功能,装饰者提供有别于继承的另一种选择。2.装饰者模式的优点有效地把类的核心职责和装饰功能区分开了,而且可以去除相关类中重复的装饰逻辑。3.装饰者模式的特点1.装饰者与被装饰对象有相同的超类型。2.可以用一个或多个装饰者包装一个对象。3.既然装饰者与被装饰对象有相同的超类型,所以在任何需要原始对象(被包装的)的场合,...原创 2019-12-05 13:37:02 · 114 阅读 · 0 评论 -
代理模式
一.序言本讲是设计模式系列的第一讲,在讨论代理模式之前,本人想就设计模式谈谈自己的几点浅见。1.设计模式的理解设计模式是前人总结的一套解决特定问题的经验。面向对象的编程,并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同属性和功能的对象的抽象集合才是类。利用面向对象方法,通过封装、继承和多态将程序的耦合程度降低。用设计模式使得程序更加灵活,容易修改,并且易于复用,即所谓的可重...原创 2019-06-08 17:27:07 · 110 阅读 · 0 评论