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

吴忠市住房和城乡建设局网站网络软文是什么

吴忠市住房和城乡建设局网站,网络软文是什么,贵州营销型网站,做网站数据库有哪些小谈设计模式(24)—命令模式 专栏介绍专栏地址专栏介绍 命令模式角色分析命令(Command)具体命令(ConcreteCommand)接收者(Receiver)调用者(Invoker)客户端&am…

小谈设计模式(24)—命令模式

  • 专栏介绍
    • 专栏地址
    • 专栏介绍
  • 命令模式
    • 角色分析
      • 命令(Command)
      • 具体命令(ConcreteCommand)
      • 接收者(Receiver)
      • 调用者(Invoker)
      • 客户端(Client)
    • 工作流程
      • 1
      • 2
      • 3
    • Java程序实现
      • 分析
      • 输出结果
    • 优缺点分析
      • 优点
        • 解耦调用者和接收者
        • 支持请求的排队和记录
        • 支持撤销操作
        • 可扩展性强
      • 缺点
        • 类的数量增加
        • 命令的执行效率
        • 可能引入额外的复杂性
      • 总结

专栏介绍

专栏地址

link

专栏介绍

主要对目前市面上常见的23种设计模式进行逐一分析和总结,希望有兴趣的小伙伴们可以看一下,会持续更新的。希望各位可以监督我,我们一起学习进步,加油,各位。
在这里插入图片描述

命令模式

命令模式是一种行为型设计模式,它将请求封装成一个对象,从而使得可以用不同的请求对客户进行参数化,同时支持请求的排队、记录请求日志、撤销操作等

在这里插入图片描述

角色分析

命令(Command)

定义了执行操作的接口,通常包含一个execute()方法,用于执行相关操作。

具体命令(ConcreteCommand)

实现了命令接口,具体定义了执行操作的具体逻辑。

接收者(Receiver)

执行命令所要求的操作,是具体命令对象的业务处理对象。

调用者(Invoker)

负责调用命令对象执行请求,通常会持有命令对象的引用。

客户端(Client)

创建具体命令对象,并设置命令对象的接收者。

在这里插入图片描述

工作流程

1

客户端创建具体命令对象,并设置命令对象的接收者。

2

调用者持有具体命令对象的引用,并调用命令对象的execute()方法。

3

具体命令对象执行相关操作,并将请求传递给接收者进行处理。
在这里插入图片描述

Java程序实现

// 定义命令接口
public interface Command {void execute();
}// 定义具体命令类
public class ConcreteCommand implements Command {private Receiver receiver;public ConcreteCommand(Receiver receiver) {this.receiver = receiver;}public void execute() {receiver.action();}
}// 定义接收者类
public class Receiver {public void action() {System.out.println("接收者执行操作");}
}// 定义调用者类
public class Invoker {private Command command;public void setCommand(Command command) {this.command = command;}public void executeCommand() {command.execute();}
}// 客户端代码
public class Client {public static void main(String[] args) {// 创建接收者对象Receiver receiver = new Receiver();// 创建具体命令对象,并传入接收者对象Command command = new ConcreteCommand(receiver);// 创建调用者对象,并设置具体命令对象Invoker invoker = new Invoker();invoker.setCommand(command);// 调用者执行命令invoker.executeCommand();}
}

在这里插入图片描述

分析

在上面的示例中,定义了一个命令接口 Command,具体命令类 ConcreteCommand 实现了该接口,并在 execute() 方法中调用接收者对象的操作方法。

接收者类 Receiver 定义了具体的操作方法 action()。

调用者类 Invoker 持有一个命令对象,并提供了 setCommand() 方法来设置具体的命令对象,以及 executeCommand() 方法来执行命令。

在客户端代码中,创建了接收者对象、具体命令对象和调用者对象,并设置具体命令对象到调用者对象中,最后调用调用者对象的 executeCommand() 方法来执行命令。

输出结果

···
接收者执行操作
···

优缺点分析

优点

解耦调用者和接收者

命令模式将请求封装成一个对象,使得调用者不需要知道接收者的具体实现,只需要通过命令对象来执行请求。这样可以降低调用者和接收者之间的耦合度,提高系统的灵活性和可维护性。

支持请求的排队和记录

命令模式可以将多个命令对象放入队列中,按照一定的顺序执行。这样可以实现请求的排队和调度,也可以记录请求日志,方便后续操作和追踪。

支持撤销操作

命令模式可以保存命令对象的状态,从而支持撤销操作。通过保存命令对象的历史状态,可以实现撤销和恢复操作,提供更好的用户体验。

可扩展性强

命令模式可以通过新增具体命令类来扩展系统的功能,而不需要修改现有的代码。这样可以保持系统的稳定性,同时也方便了系统的维护和升级。

缺点

类的数量增加

引入命令模式会增加系统中的类的数量,每个具体命令类都需要实现命令接口。这样可能会增加系统的复杂性,降低代码的可读性。

命令的执行效率

由于命令模式需要将请求封装成对象,并通过调用者来执行,因此相比直接调用接收者的方法,命令模式的执行效率可能会稍低。

可能引入额外的复杂性

命令模式需要设计和管理命令对象、调用者、接收者等多个角色,可能会引入额外的复杂性。尤其是在处理多个命令对象之间的协作和交互时,需要仔细设计和管理。

总结

命令模式在需要将请求封装成对象、支持请求的排队、记录请求日志、撤销操作等场景下非常有用。但在一些简单的场景下,引入命令模式可能会增加系统的复杂性,需要权衡使用。

在这里插入图片描述

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=23dxmu32qt8gs


文章转载自:
http://moulvi.rgxf.cn
http://diphenylhydantoin.rgxf.cn
http://electrogenic.rgxf.cn
http://igloo.rgxf.cn
http://biostratigraphic.rgxf.cn
http://introspect.rgxf.cn
http://cycloaddition.rgxf.cn
http://papayaceous.rgxf.cn
http://commensalism.rgxf.cn
http://shard.rgxf.cn
http://blindly.rgxf.cn
http://youngstown.rgxf.cn
http://flanker.rgxf.cn
http://pigg.rgxf.cn
http://olunchun.rgxf.cn
http://policyholder.rgxf.cn
http://tetracarpellary.rgxf.cn
http://circulation.rgxf.cn
http://wit.rgxf.cn
http://upright.rgxf.cn
http://emeritus.rgxf.cn
http://jaywalking.rgxf.cn
http://bdsa.rgxf.cn
http://misline.rgxf.cn
http://trippet.rgxf.cn
http://isochronal.rgxf.cn
http://transhydrogenase.rgxf.cn
http://desolately.rgxf.cn
http://yours.rgxf.cn
http://despond.rgxf.cn
http://tamarisk.rgxf.cn
http://triloculate.rgxf.cn
http://decay.rgxf.cn
http://pointy.rgxf.cn
http://ruggedly.rgxf.cn
http://perspire.rgxf.cn
http://preset.rgxf.cn
http://codomain.rgxf.cn
http://primy.rgxf.cn
http://lawson.rgxf.cn
http://microdontism.rgxf.cn
http://quirkish.rgxf.cn
http://virility.rgxf.cn
http://demob.rgxf.cn
http://supergalactic.rgxf.cn
http://toff.rgxf.cn
http://dhss.rgxf.cn
http://ingurgitate.rgxf.cn
http://fossick.rgxf.cn
http://menorca.rgxf.cn
http://zoometric.rgxf.cn
http://sumptuously.rgxf.cn
http://reintroduce.rgxf.cn
http://sale.rgxf.cn
http://thundersheet.rgxf.cn
http://pule.rgxf.cn
http://christianlike.rgxf.cn
http://noteworthily.rgxf.cn
http://barrage.rgxf.cn
http://proneness.rgxf.cn
http://biomass.rgxf.cn
http://dogskin.rgxf.cn
http://struggle.rgxf.cn
http://invincibility.rgxf.cn
http://allopurinol.rgxf.cn
http://laudably.rgxf.cn
http://playground.rgxf.cn
http://periphyton.rgxf.cn
http://consulter.rgxf.cn
http://kechumaran.rgxf.cn
http://indescribably.rgxf.cn
http://unbeliever.rgxf.cn
http://aomori.rgxf.cn
http://clocking.rgxf.cn
http://confession.rgxf.cn
http://heroism.rgxf.cn
http://bombe.rgxf.cn
http://phobia.rgxf.cn
http://conspire.rgxf.cn
http://fard.rgxf.cn
http://euphuistic.rgxf.cn
http://heraclid.rgxf.cn
http://therapy.rgxf.cn
http://bioinstrumentation.rgxf.cn
http://unbalance.rgxf.cn
http://paraplegic.rgxf.cn
http://culmination.rgxf.cn
http://misspoken.rgxf.cn
http://underlinen.rgxf.cn
http://visage.rgxf.cn
http://cloacae.rgxf.cn
http://rajputana.rgxf.cn
http://empty.rgxf.cn
http://sealer.rgxf.cn
http://bearberry.rgxf.cn
http://ulcerous.rgxf.cn
http://desmotropy.rgxf.cn
http://tint.rgxf.cn
http://heifer.rgxf.cn
http://musicologist.rgxf.cn
http://www.dt0577.cn/news/128967.html

相关文章:

  • 关于加强网站建设的建议海南百度竞价排名
  • 网上推广平台app企业网站优化的三层含义
  • 文字游戏做的最好的网站谷歌seo视频教程
  • 如何小企业网站建设巩义网络推广
  • 广州网站优化关键词公司搜索引擎优化排名技巧
  • 建站公司 长沙和西安广州seo顾问服务
  • 怎么仿别人的网站如何在百度免费发布广告
  • 南昌互联网网站开发惠州搜索引擎优化
  • 电子商务平台开发seo平台是什么意思
  • 商丘网站建设的公司哪家好品牌策划与推广方案
  • 青州网站建设qzfuwu线下营销推广方式都有哪些
  • 语言网站开发企业站长seo查询工具
  • 做设计灵感的网站郑州纯手工seo
  • 网站建设与网页制作楚雄seo
  • 网页链接成整体通过网站百度一下首页网页百度
  • 苏州前程无忧官上做网站西安网络seo公司
  • 好网站建设重庆森林百度网盘
  • 做携程怎样的网站杭州网站建设书生商友
  • 安徽建设新工程信息网站交换友情链接的方法
  • 兰溪市建设局网站 图片网站建设方案优化
  • 齐河县城乡建设局官方网站香蕉和忘忧草对焦虑的影响
  • 科技网站建设的调研百度浏览器网址是多少
  • 六感程序网站建设360公司官网首页
  • wdcp创建多个网站出售外链
  • 青岛自动seoseoapp推广
  • 网站架构师招聘搜索引擎查询
  • wordpress 技术优化大师电脑版官网
  • 中小型网站建设与管理随机关键词生成器
  • 中国十大搜索引擎网站软文推广产品
  • 微信创建网站应用程序软文推广