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

京东企业网站建设思路大庆小程序制作

京东企业网站建设思路,大庆小程序制作,烟台好的网站设计公司,seo短期课程承接Qt/C软件开发项目#xff0c;高质量交付#xff0c;灵活沟通#xff0c;长期维护支持。需求所寻#xff0c;技术正适#xff0c;共创完美#xff0c;欢迎私信联系#xff01; 一、命令模式的说明 命令模式#xff08;Command Pattern#xff09;是一种行为设计模式… 承接Qt/C软件开发项目高质量交付灵活沟通长期维护支持。需求所寻技术正适共创完美欢迎私信联系 一、命令模式的说明 命令模式Command Pattern是一种行为设计模式它允许将请求封装成对象从而使得可以将请求参数化、队列化、并且可以用不同的请求来参数化客户端调用者的对象。这个模式也支持可撤销的操作。 命令模式通常包括以下几个角色 Command命令: 定义了执行操作的接口通常包括执行方法execute()和可能的撤销方法undo()。 ConcreteCommand具体命令: 实现了Command接口持有执行操作所需的相关信息包括对接收者对象的引用。 Invoker调用者: 请求的发送者通过命令对象来执行请求。 Receiver接收者: 实际执行操作的对象。 二、命令模式的场景 命令模式在实际应用中有很多常见的案例以下是其中一些常用的情况 菜单和按钮操作在图形用户界面GUI应用程序中菜单项和按钮通常可以被抽象为命令对象。当用户点击菜单项或按钮时相应的命令被执行这样做的好处是可以将用户操作与具体的执行操作解耦。 多级撤销Undo操作命令模式支持撤销操作因此它在需要实现撤销多个步骤的应用程序中很有用。每个命令对象可以保存执行操作的状态以便在撤销时恢复到先前的状态。 任务调度器命令模式可以用于实现任务调度器其中每个任务可以被封装成一个命令对象并且可以按照一定的顺序执行。 日志记录命令模式可以用于实现日志记录系统每个命令对象的执行都可以被记录下来从而实现日志记录功能。 遥控器和家电控制像前面示例中的遥控器一样命令模式常用于实现遥控器和家电的控制系统。每个按钮可以关联一个命令对象当按下按钮时执行相应的命令。 数据库事务处理在数据库操作中命令模式可以用于实现事务处理每个数据库操作可以被封装成一个命令对象事务的提交或回滚可以看作是对一系列命令对象的执行或撤销。 三、命令模式的优缺点 优点 解耦调用者和接收者命令模式通过将请求封装成独立的命令对象从而解耦了请求的发送者和接收者。这使得系统中的对象不需要知道彼此的细节降低了对象之间的耦合度提高了系统的灵活性。 支持撤销和重做由于命令对象通常会保存执行所需的状态信息因此可以很容易地支持撤销和重做操作。这对于实现撤销历史记录、撤销栈等功能非常有用。 支持命令的排队执行命令模式可以将请求排队并按照一定的顺序执行。这对于实现任务调度器等功能很有用。 容易扩展通过添加新的命令类和接收者类可以很容易地扩展命令模式而不需要修改现有的代码。这样使得系统更加灵活和可扩展。 中心化控制命令模式将请求封装成对象使得可以在系统中集中控制命令的执行。这样可以更好地管理和维护系统的行为。 缺点 类爆炸如果系统中有大量的命令类和接收者类可能会导致类的数量急剧增加从而增加了系统的复杂性。 可能引入过多的代码在某些情况下引入命令模式可能会增加过多的代码量特别是对于简单的功能而言直接调用函数可能更加简单和直接。 增加了系统的复杂性命令模式增加了系统中的额外的抽象层次可能会增加系统的理解和维护成本。 不适用于所有情况命令模式并不适用于所有的情况特别是对于简单的功能而言引入命令模式可能会显得过于复杂。 可能降低执行效率由于命令模式需要将请求封装成对象可能会导致额外的性能开销特别是在系统需要频繁创建和销毁命令对象的情况下。 四、命令模式的代码 #include iostream #include string #include memory// Command Interface class Command { public:virtual ~Command() {}virtual void execute() 0; };// Receiver class Light { public:void turnOn() {std::cout Light is on\n;}void turnOff() {std::cout Light is off\n;} };// Concrete Command class TurnOnCommand : public Command { public:TurnOnCommand(std::shared_ptrLight light) : m_light(light) {}void execute() override {m_light-turnOn();} private:std::shared_ptrLight m_light; };class TurnOffCommand : public Command { public:TurnOffCommand(std::shared_ptrLight light) : m_light(light) {}void execute() override {m_light-turnOff();} private:std::shared_ptrLight m_light; };// Invoker class RemoteControl { public:void setCommand(std::shared_ptrCommand command) {m_command command;}void pressButton() {m_command-execute();}private:std::shared_ptrCommand m_command; };int main() {// Receiverstd::shared_ptrLight light std::make_sharedLight();// Concrete Commandsstd::shared_ptrCommand turnOnCommand std::make_sharedTurnOnCommand(light);std::shared_ptrCommand turnOffCommand std::make_sharedTurnOffCommand(light);// InvokerRemoteControl remote;// Set commandsremote.setCommand(turnOnCommand);remote.pressButton(); // Output: Light is onremote.setCommand(turnOffCommand);remote.pressButton(); // Output: Light is offreturn 0; }
文章转载自:
http://www.morning.ltksw.cn.gov.cn.ltksw.cn
http://www.morning.rzmlc.cn.gov.cn.rzmlc.cn
http://www.morning.gbgdm.cn.gov.cn.gbgdm.cn
http://www.morning.ggtgl.cn.gov.cn.ggtgl.cn
http://www.morning.ndcjq.cn.gov.cn.ndcjq.cn
http://www.morning.wrtw.cn.gov.cn.wrtw.cn
http://www.morning.sjzsjsm.com.gov.cn.sjzsjsm.com
http://www.morning.ybqlb.cn.gov.cn.ybqlb.cn
http://www.morning.sdhmn.cn.gov.cn.sdhmn.cn
http://www.morning.mfmx.cn.gov.cn.mfmx.cn
http://www.morning.xmttd.cn.gov.cn.xmttd.cn
http://www.morning.hffpy.cn.gov.cn.hffpy.cn
http://www.morning.wpqcj.cn.gov.cn.wpqcj.cn
http://www.morning.znrgq.cn.gov.cn.znrgq.cn
http://www.morning.wtnwf.cn.gov.cn.wtnwf.cn
http://www.morning.gwsdt.cn.gov.cn.gwsdt.cn
http://www.morning.bpzw.cn.gov.cn.bpzw.cn
http://www.morning.qyjqj.cn.gov.cn.qyjqj.cn
http://www.morning.zcxjg.cn.gov.cn.zcxjg.cn
http://www.morning.cpkcq.cn.gov.cn.cpkcq.cn
http://www.morning.pgggs.cn.gov.cn.pgggs.cn
http://www.morning.wslpk.cn.gov.cn.wslpk.cn
http://www.morning.qkgwx.cn.gov.cn.qkgwx.cn
http://www.morning.rnwt.cn.gov.cn.rnwt.cn
http://www.morning.inheatherskitchen.com.gov.cn.inheatherskitchen.com
http://www.morning.qrpx.cn.gov.cn.qrpx.cn
http://www.morning.xrwsg.cn.gov.cn.xrwsg.cn
http://www.morning.yrpd.cn.gov.cn.yrpd.cn
http://www.morning.ggcjf.cn.gov.cn.ggcjf.cn
http://www.morning.pshtf.cn.gov.cn.pshtf.cn
http://www.morning.dbnrl.cn.gov.cn.dbnrl.cn
http://www.morning.xkwyk.cn.gov.cn.xkwyk.cn
http://www.morning.qbgff.cn.gov.cn.qbgff.cn
http://www.morning.fjshyc.com.gov.cn.fjshyc.com
http://www.morning.dhxnr.cn.gov.cn.dhxnr.cn
http://www.morning.yfzld.cn.gov.cn.yfzld.cn
http://www.morning.wrlqr.cn.gov.cn.wrlqr.cn
http://www.morning.bqhlp.cn.gov.cn.bqhlp.cn
http://www.morning.wpqcj.cn.gov.cn.wpqcj.cn
http://www.morning.nkjnr.cn.gov.cn.nkjnr.cn
http://www.morning.srxhd.cn.gov.cn.srxhd.cn
http://www.morning.crkmm.cn.gov.cn.crkmm.cn
http://www.morning.qtwd.cn.gov.cn.qtwd.cn
http://www.morning.jjtwh.cn.gov.cn.jjtwh.cn
http://www.morning.lfdmf.cn.gov.cn.lfdmf.cn
http://www.morning.hymmq.cn.gov.cn.hymmq.cn
http://www.morning.ydfr.cn.gov.cn.ydfr.cn
http://www.morning.tgmwy.cn.gov.cn.tgmwy.cn
http://www.morning.cldgh.cn.gov.cn.cldgh.cn
http://www.morning.xxgfl.cn.gov.cn.xxgfl.cn
http://www.morning.jgmdr.cn.gov.cn.jgmdr.cn
http://www.morning.nwjzc.cn.gov.cn.nwjzc.cn
http://www.morning.lbxcc.cn.gov.cn.lbxcc.cn
http://www.morning.junyaod.com.gov.cn.junyaod.com
http://www.morning.ynlbj.cn.gov.cn.ynlbj.cn
http://www.morning.bqqzg.cn.gov.cn.bqqzg.cn
http://www.morning.yqrfn.cn.gov.cn.yqrfn.cn
http://www.morning.hdpcn.cn.gov.cn.hdpcn.cn
http://www.morning.jkdtz.cn.gov.cn.jkdtz.cn
http://www.morning.ymbqr.cn.gov.cn.ymbqr.cn
http://www.morning.rnqbn.cn.gov.cn.rnqbn.cn
http://www.morning.bnlch.cn.gov.cn.bnlch.cn
http://www.morning.qbmjf.cn.gov.cn.qbmjf.cn
http://www.morning.pzwfw.cn.gov.cn.pzwfw.cn
http://www.morning.kcbml.cn.gov.cn.kcbml.cn
http://www.morning.xmnlc.cn.gov.cn.xmnlc.cn
http://www.morning.mlcwl.cn.gov.cn.mlcwl.cn
http://www.morning.gghhmi.cn.gov.cn.gghhmi.cn
http://www.morning.wjxtq.cn.gov.cn.wjxtq.cn
http://www.morning.nkpls.cn.gov.cn.nkpls.cn
http://www.morning.bndkf.cn.gov.cn.bndkf.cn
http://www.morning.bqyb.cn.gov.cn.bqyb.cn
http://www.morning.qnsmk.cn.gov.cn.qnsmk.cn
http://www.morning.tllws.cn.gov.cn.tllws.cn
http://www.morning.lqytk.cn.gov.cn.lqytk.cn
http://www.morning.ytfr.cn.gov.cn.ytfr.cn
http://www.morning.hnrls.cn.gov.cn.hnrls.cn
http://www.morning.wxccm.cn.gov.cn.wxccm.cn
http://www.morning.fchkc.cn.gov.cn.fchkc.cn
http://www.morning.xdqrz.cn.gov.cn.xdqrz.cn
http://www.tj-hxxt.cn/news/266676.html

相关文章:

  • 贵阳建网站公司建立局域网的步骤
  • 网站建设开放的端口wordpress 如何结合vue
  • 百度知道山东网站建设wordpress后台新建慢
  • 网站着陆页社交平台运营是做什么的
  • 成都网站游戏设计怎么免费做个人网站
  • 做汽车微信广告视频网站有哪些河南洛阳网络公司
  • 如何在网站页面添加代码口碑好的网页制作公司
  • 免费个人logo设计网站做网站推广有前景吗
  • 做贸易做个外贸网站有必要吗星悦做任务网站是
  • 采购网站有哪些阿里云如何安装wordpress
  • 昆明网站建设是什么意思郴州市
  • 网站建设电话多少wordpress 增加页面
  • 网站建设交印花税嘛wordpress 图片切换插件
  • 三合一网站系统淮安软件园网站建设
  • 什么是电子商务网站推广大兴网站建设费用
  • 北京网站设计公司新杭州建设局网站官网
  • 建设企业网银u盾网站打不开网页制作员是做什么的
  • 网站免费搭建平台网站开发介绍人拿多少钱
  • 驻马店app和网站开发公司网络优化师
  • 某公司的网站建设的资金预算书建设银行江苏官网招聘网站
  • 建设网站图片素材哪些网站是单页应用
  • 长春火车站到吉大二院企业网站源代码下载
  • 深圳市网站开发公司400电话网站源码
  • 龙岗网站建设服务上海的网站名
  • 手机门户网站开发上海 专业网站设计
  • 手机系统优化软件哪个好东营seo网站推广费用
  • 如何在百度上建免费网站从零开始做网站
  • google seo整站优化网站运行平台包括
  • 电商网站会员体制怎么做廉江网站建设
  • 网站开发研发工程师岗位职责大数据营销系统多少钱