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

南通网站优建设哪些网站做魔兽地图

南通网站优建设,哪些网站做魔兽地图,wordpress外观主题制作,小企业做网站有用吗一、简介 命令模式#xff1a;将请求#xff08;命令#xff09;封装为一个对象#xff0c;这样可以使用不同的请求参数化其他对象#xff08;将不同请求依赖注入到其他对象#xff09;#xff0c;并且能够支持请求#xff08;命令#xff09;的排队执行、记录日志、…一、简介 命令模式将请求命令封装为一个对象这样可以使用不同的请求参数化其他对象将不同请求依赖注入到其他对象并且能够支持请求命令的排队执行、记录日志、撤销等附加控制功能。 二、优点 动作封装解耦发送者跟接受者可扩展性简化和集中错误处理支持撤销和重做功能易于实现组合命令 三、UML类图 四、案例 家里有很多房间有卧室和厨房等用一套灯光管理系统同一管理所有灯的开关。 package mainimport fmttype Light interface {On()Off() }type KitchenLight struct { }func NewKitchenLight() *KitchenLight {return KitchenLight{} }func (*KitchenLight) On() {fmt.Println(Kitchen light is on) }func (*KitchenLight) Off() {fmt.Println(Kitchen light is off) }type LivingRoomLight struct { }func NewLivingRoomLight() *LivingRoomLight {return LivingRoomLight{} }func (*LivingRoomLight) On() {fmt.Println(Living room light is on) }func (*LivingRoomLight) Off() {fmt.Println(Living room light is off) }type Command interface {Execute()Undo() }type LightOnCommand struct {Lights []Light }func NewLightOnCommand(lights []Light) LightOnCommand {return LightOnCommand{Lights: lights} }func (loc *LightOnCommand) Execute() {for _, light : range loc.Lights {light.On()} }func (loc *LightOnCommand) Undo() {for _, light : range loc.Lights {light.Off()} }type LightOffCommand struct {Lights []Light }func NewLightOffCommand(lights []Light) LightOffCommand {return LightOffCommand{Lights: lights} }func (loc *LightOffCommand) Execute() {for _, light : range loc.Lights {light.Off()} }func (loc *LightOffCommand) Undo() {for _, light : range loc.Lights {light.On()} }func main() {kitchenLight : NewKitchenLight()livingRoomLight : NewLivingRoomLight()lightOnCommand : NewLightOnCommand([]Light{kitchenLight, livingRoomLight})lightOnCommand.Execute()lightOnCommand.Undo()lightOffCommand : NewLightOffCommand([]Light{kitchenLight, livingRoomLight})lightOffCommand.Execute()lightOffCommand.Undo() }五、对比 命令模式与策略模式的区别在策略模式中不同的策略具有相同的目的、不同的实现、互相之间可以替换。比如BubbleSort、SelectionSort都是为了实现排序的只不过一个是用冒泡排序算法来实现的另一个是用选择排序算法来实现的。而在命令模式中不同的命令具有不同的目的对应不同的处理逻辑并且互相之间不可替换。
http://www.zqtcl.cn/news/351320/

相关文章:

  • 网站后台重置密码怎么做360网站怎么做网址链接
  • 广告网站建设及推广网站建设怎样推广
  • 做网站使网页不居中滁州注册公司流程和费用
  • 做网站广告经营者个性定制网站
  • 网站开发 北京外包公司软件公司网站建设
  • 网络认证入口seo免费诊断
  • 十大知名博客网站郑州企业建站公司定制
  • 视频网站如何做引流网站首页 关键词
  • 建设机械网站精英大港做网站
  • 潜山网站建设公司哪里有wordpress相册投票插件
  • 网站建设制作过程网站添加支付功能
  • 网站制作字体即墨公司做网站
  • vue 做pc网站可以吗哪个网站买域名便宜
  • 做销售网站那家好金华住房与城乡建设部网站
  • apple私人免费网站怎么下载无锡网站建设技术
  • 移动应用网站开发阶段作业信息型网站有哪些
  • 监控直播网站开发网站建设与管理总结
  • 青岛城阳网站设计免费网站成品
  • 做服装外贸的网站ghost wordpress
  • 建设银行的网站为什么这么卡网页设计用啥软件
  • 电子商务 网站开发南阳网网站建设
  • 中小型企业网络拓扑图及配置株洲seo网站推广
  • 中国镇江网站如何搭建自己的网址
  • wordpress 自动广告seo搜索引擎优化原理
  • 区块链网站用vue.js做怎么样长春站建筑
  • 集团公司门户网站建设adsl做网站
  • 山东建设监理协会官方网站茂名建站公司模板
  • 烟台做网站案例创业网站推广怎么做
  • php项目网站建设方案书专做药材的网站有哪些
  • 网站表单模板营销型网站建设的5大技巧