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

一般企业网站3年多少钱江苏省建筑网站

一般企业网站3年多少钱,江苏省建筑网站,石嘴山网站定制开发建设,建筑施工企业有哪些什么是命令模式? 核心思想是将原本直接调用的方法封装为对象(如AttackCommand),对象包含​​执行逻辑​​和​​上下文信息​​(如目标、参数)。比如,玩家的按键操作被封装成一个命令对象&#…

什么是命令模式?

核心思想是将原本直接调用的方法封装为对象(如AttackCommand,对象包含​​执行逻辑​​和​​上下文信息​​(如目标、参数)。比如,玩家的按键操作被封装成一个命令对象,而不是直接调用角色的方法,可以支持撤销/重做。

这样可以将请求的发起者和执行者解耦

如何将"行为请求者"与"行为实现者"解耦?将一组行为抽象为对象,可以实现二者之间的松耦合,这是命令模式的使用场景

使用时机当需要先将一个函数登记上,然后再以后调用此函数时,就需要使用命令模式,其实这就是回调函数。

有时候需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是什么。此时希望用一种松耦合的方式来设计程序,使得请求发送者和请求接收者能够消除彼此之间的耦合关系

例子:拿订餐来说,客人需要向厨师发送请求,但是完全不知道这些厨师的名字和联系方式,也不知道厨师炒菜的方式和步骤。 命令模式把客人订餐的请求封装成 command 对象,也就是订餐中的订单对象这个对象可以在程序中被四处传递,就像订单可以从服务员手中传到厨师的手中。这样一来,客人不需要知道厨师的名字,从而解开了请求调用者和请求接收者之间的耦合关系

什么是观察者模式?

观察者模式是关于多个对象想知道一个对象中数据变化情况。是一种一对多的依赖关系,当一个对象的状态发生变化时,所有它的“观察者”都得到通知。

主要解决:一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。

事件
一个类对象可以通过事件来通知别个类对象,如果这个事件发生了,那么关心、订阅这个事件的对象们会纷纷作出反应

事件必须用委托类型来声明,并且只能由该委托类型来订阅

委托
用于将方法作为参数传递给其他方法,是引用类型

使用delegate关键字来声明一个类型,然后再创建这个委托类型实例

委托的优势:多播和动态绑定

Action委托:指向一个无返回值的方法

Func委托:指向一个有返回值的方法

使用场景

(1)当一个对象的数据更新时需要通知其他对象,但这个对象又不希望和被通知的那些对象形成紧耦合。

(2)当一个对象的数据更新时,这个对象需要让其他对象也各自更新自己的数据,但这个对象不知道具体有多少对象需要更新数据

观察者模式满足“开-闭原则”

对扩展开放​

  • ​新增观察者无需修改主题代码

  • ​主题可以动态增减观察者

对修改关闭​

  • ​主题的逻辑不因观察者变化而修改

什么是状态模式?

主要解决:当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。

意图:允许一个对象在其内部状态改变时改变它的行为

使用状态模式,可以很好地避免过多的if–else –分支,状态模式将每一个状态分支放入一个独立的类中,每一个状态对象都可以独立存在,程序根据不同的状态使用不同的状态对象来实现功能

要使用状态模式,我们必须明确两个东西:状态和每个状态下执行的动作

在状态模式中,因为所有的状态都要执行相应的动作,所以我们可以考虑将状态抽象出来。

状态的抽象一般有两种形式:接口和抽象类如果所有的状态都有共同的数据域,可以使用抽象类,但如果只是单纯的执行动作,就可以使用接口。

状态模式和策略模式的不同?

用状态模式的情况​

✅ ​​对象行为由内部状态决定​​(如角色状态、AI行为)。
✅ ​​状态之间有逻辑关联​​(如“待机→行走→攻击→待机”)。
✅ ​​状态转换由对象内部管理​​(如角色自动进入下一个状态)。

​用策略模式的情况​

✅ ​​需要动态切换算法​​(如不同武器效果、排序算法)。
✅ ​​策略之间无逻辑关联​​(如火焰、冰冻、雷电是独立的)。
✅ ​​客户端决定使用哪种策略​​(如玩家选择武器)。


文章转载自:

http://BxccFmYR.sjcpr.cn
http://UEFf9Sqg.sjcpr.cn
http://nEqP7HKJ.sjcpr.cn
http://dTrFX3ks.sjcpr.cn
http://SVVOiYoM.sjcpr.cn
http://ZiRyg6Gu.sjcpr.cn
http://2MEHZowE.sjcpr.cn
http://2tXJWVJV.sjcpr.cn
http://fzEOP4iu.sjcpr.cn
http://oWIp9RJh.sjcpr.cn
http://ro6sjDh8.sjcpr.cn
http://Y463eHgN.sjcpr.cn
http://YHTGreRl.sjcpr.cn
http://JQa8O4hj.sjcpr.cn
http://vxvEyd33.sjcpr.cn
http://LQWvS2Vd.sjcpr.cn
http://ODlFORHp.sjcpr.cn
http://XX0moKI2.sjcpr.cn
http://mRFjhOa4.sjcpr.cn
http://w9kDYGJE.sjcpr.cn
http://E7RiHXaJ.sjcpr.cn
http://oHRfTYAf.sjcpr.cn
http://g5rjLEPZ.sjcpr.cn
http://XpSpvpIp.sjcpr.cn
http://zXa0ovyk.sjcpr.cn
http://sGa5KcU1.sjcpr.cn
http://3mmQwc3m.sjcpr.cn
http://2fXmMnTW.sjcpr.cn
http://K98q6mJQ.sjcpr.cn
http://pPgHuEuP.sjcpr.cn
http://www.dtcms.com/wzjs/771704.html

相关文章:

  • 搜索网站怎么做的天津建设厅网站
  • 保健品网站建设方案书模板wordpress手机版边侧导航
  • 白沙的网站建设重庆企业网站开发
  • 网页设计设计一个网站首页妇科网站源码
  • 柳州网站建设psn1185156智通人才招聘网
  • 想象力网站建设如何做公司自己的网站
  • 泰安网站制作马克飞象 wordpress
  • 网站空间 阿里云wordpress 中国地图
  • 怎么仿网站链接合肥seo排名扣费
  • 个人做外贸网站平台wordpress 支持代码高亮的插件
  • 成都建站模板网站制作网站开发工程师 招聘
  • 企业网站 多网站推广免费logo设计图
  • 建设银行网站查余额查询建设一个网站需要做哪些事情
  • 佛山网站建设哪里有wordpress移动导航栏设置
  • 如何利用源代码做网站装修设计公司名字
  • 手机网站开发session网页制作知识点归纳
  • 关于书店电商网站建设的心得企业门户网站开发任务书
  • 手机网站建站价格5昌平区网站建设
  • 广东省做网站的公司东莞保安公司投诉电话
  • 成都科技网站建设联系创欧科技 网站建设
  • 房山做网站腾讯企业邮箱怎么注册
  • 做外汇那个网站好wordpress主题分为多章节
  • 网站建设专员求职简历怎么做网站优化 s
  • 做网站方案怎么写单机多wordpress
  • 原江苏省建设厅网站docker安装wordpress
  • 上杭网站制作wordpress新建网页插件
  • 彩票网站开发的风险wordpress产品展示主题
  • 石排仿做网站网站备案 超链接
  • 如何建设股权众筹网站百度网盟推广网站
  • 查询网站备案时间查询南宁网站建设服务