当前位置: 首页 > news >正文

一句话设计模式5:责任链模式

责任链模式:步步为营。


文章目录

  • 责任链模式:步步为营。
  • 前言
  • 一、责任链模式的作用
  • 二、如何实现责任链
        • 1 既然是责任链,那么就需要一个链路的承载体 ChainBody
        • 2 责任链中每一步都是一个抽象类,因为承载体仅仅是构造链路顺序,里面不放置任何具体业务逻辑:步骤抽象类
        • 3 具体步骤执行,继承步骤抽象类
        • 4 开始测试
  • 总结


前言

责任链模式个人认为算是设计模式中比较复杂的一个;顾名思义 责任链,这个模式的思想是: 构造一个个的,有规则的步骤,拼接为一个链路,然后执行,例如: 制作鸡蛋炒饭
第一步: 做米饭
第二步: 煎蛋
第三步: 一起炒

每一步有每一步骤的职责,当有需求改动的时候,可以灵活调整,例如我想放入葱花,那么只需要再加一步即可;


一、责任链模式的作用

旨在解决复杂业务逻辑的代码堆积化,使代码接口清晰;

1 将一个臃肿的业务逻辑,有序的拆分为多个子步骤,可以让逻辑更清晰,逻辑层代码简洁
2 多个步骤之间通常顺序不可变,但如果业务逻辑无先后顺序,也可以调整顺

http://www.lryc.cn/news/36699.html

相关文章:

  • 保姆级使用PyTorch训练与评估自己的EVA网络教程
  • Java--JMH--性能测试--测试软件运行效率/时间--StopWatch
  • JavaScript Array(数组)对象
  • 干货 | 电容在电路35个基本常识
  • 日读300篇文献的技巧
  • C++核心编程
  • SpringMVC程序开发
  • 多版本并发控制MVCC
  • JavaScript Date(日期)对象
  • 【Python】AES加解密代码,文章还有加密串等你来解密,等你来挑战
  • 代码随想录【Day34】| 1005. K 次取反后最大化的数组和、134. 加油站、135. 分发糖果
  • Java性能调优杀手锏JMH
  • 实现excle表上传生成echarts图
  • python代码如何打包
  • MyBatis学习笔记(十二) —— MyBatis的逆向工程
  • 4.Elasticsearch深入了解
  • 【HashSet】| 深度剥析Java SE 源码合集Ⅲ
  • 你了解线程的状态转换吗
  • MyBatis-Plus联表查询的短板,该如何解决呢
  • 吲哚菁绿-巯基,ICG-SH,科研级别试剂,吲哚菁绿可用于测定心输出量、肝脏功能、肝血流量,和对于眼科血管造影术。
  • 深度剖析JavaOptional类
  • 平面设计软件Corel CDR2023又开始放大招啦,CorelDRAW Graphics Suite 2023有哪些新增功能?
  • 初学torch【报错:expected scalar type double but found float、rmse】
  • 金三银四、金九银十 面试宝典 JAVASE八股文面试题 超级无敌全的面试题汇总(接近3万字的面试题,让你的JAVA语法基础无可挑剔)
  • 数据结构:链式二叉树初阶
  • 公式编写1000问9-12
  • C++11:类的新功能和可变参数模板
  • 【Java学习笔记】15.Java 日期时间(1)
  • 在ROS2中,通过MoveIt2控制Gazebo中的自定义机械手
  • Java-线程池 原子性 类