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

简单网站建设报价单浚县网站建设

简单网站建设报价单,浚县网站建设,传媒公司取名,外贸网站建设原则23种计模式之 前言 #xff08;5#xff09;单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、#xff08;11#xff09;策略模式、责任链模式、命令模式、中介者模…23种计模式之 前言 5单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、11策略模式、责任链模式、命令模式、中介者模式、模板模式、迭代器模式、访问者模式、观察者模式、解释器模式、备忘录模式、状态模式 设计原则 21-Python与设计模式–备忘录模式 一、游戏进度保存 打过游戏的朋友一定知道大多数游戏都有保存进度的功能如果一局游戏下来忘保存了进度 那么下次只能从上次进度点开始重新打了。一般情况下保存进度是要存在可持久化存储器上 本例中先以保存在内存中来模拟实现该场景的情形。 以模拟一个战斗角色为例。首先创建游戏角色。 class GameCharacter():vitality 0attack 0defense 0def displayState(self):print Current Values:print Life:%d % self.vitalityprint Attack:%d % self.attackprint Defence:%d % self.defensedef initState(self,vitality,attack,defense):self.vitality vitalityself.attack attackself.defense defensedef saveState(self):return Memento(self.vitality, self.attack, self.defense)def recoverState(self, memento):self.vitality memento.vitalityself.attack memento.attackself.defense memento.defense class FightCharactor(GameCharacter):def fight(self):self.vitality - random.randint(1,10)GameCharacter定义了基本的生命值、攻击值、防御值以及实现角色状态控制的方法 FightCharactor实现具体的“战斗”接口。为实现保存进度的细节还需要一个备忘录来保存进度。 class Memento:vitality 0attack 0defense 0def __init__(self, vitality, attack, defense):self.vitality vitalityself.attack attackself.defense defense复制代码万事俱备在业务逻辑中可以进行类的调度了。 if __name____main__:game_chrctr FightCharactor()game_chrctr.initState(100,79,60)game_chrctr.displayState()memento game_chrctr.saveState()game_chrctr.fight()game_chrctr.displayState()game_chrctr.recoverState(memento)game_chrctr.displayState()打印如下 Current Values: Life:100 Attack:79 Defence:60 Current Values: Life:91 Attack:79 Defence:60 Current Values: Life:100 Attack:79 Defence:60 由生命值变化可知先保存状态值经过一轮打斗后生命值由100变为91 而后恢复状态值生命值又恢复成100。二、备忘录模式 备忘录模式定义如下在不破坏封装性的前提下捕获一个对象的内部状态并在该对象之外保存这个状态。 这样以后就可以将该对象恢复到原来保存的状态。在备忘录模式中如果要保存的状态多 可以创造一个备忘录管理者角色来管理备忘录。三、备忘录模式应用场景 1、需要保存和恢复数据的相关状态场景。如保存游戏状态的场景撤销场景如Ctrl-Z操作事务回滚的应用。一般情况下事务回滚有两种方式一是把从恢复点开始的操作都反向执行一遍二是直接恢复到恢复点的各种状态。两种方式各有优缺点要结合业务场景决定使用哪种模式 2、副本监控场景。备忘录可以当作一个临时的副本监控实现非实时和准实时的监控。
http://www.w-s-a.com/news/992383/

相关文章:

  • 推荐做任务网站软件定制开发哪家好
  • 邯郸兄弟建站第三方仓储配送公司
  • 商丘家具网站建设wordpress 添加代码
  • 基础建设的网站有哪些内容成都科技网站建设咨询电话
  • 券多多是谁做的网站招聘网站开发模板
  • 网站主机一般选哪种的企业数字展厅
  • 网站建设该如何学衡水建设局网站首页
  • 高校网站建设工作总结番禺网站开发哪家好
  • 苏州 网站的公司wordpress主页代码
  • 怎么用html做图片展示网站外贸网站建设推广费用
  • 可以做本地生活服务的有哪些网站中油七建公司官网
  • 如何建设谷歌网站网站建设优点
  • 做网站的目标是什么产品宣传片制作公司
  • 柳州建设公司网站辽宁建设工程信息网评标专家入库
  • 合肥建设学校官方网站excel导入wordpress
  • 禹城网站设计做网站需要考虑哪些
  • 深圳做营销网站建设wordpress添加文章封面
  • 阿里云的网站建设方案织梦和wordpress哪个安全
  • 聊城网站建设公司电话wordpress怎么重新配置文件
  • 创业如何进行网站建设泰州公司注册
  • 免费网站建设培训学校手机百度高级搜索入口在哪里
  • 建站经验安徽六安发现一例新冠阳性检测者
  • 滨州内做网站系统的公司汕头网络营销公司
  • 苏州制作网站的公司哪家好wordpress google搜索
  • c语言做项目网站wordpress博客被书为什么还
  • 企业建站用什么系统网站建设补充协议模板
  • 常州网站关键字优化淘客网站怎么做排名
  • 全flash网站制作教程网站做进一步优化
  • 建设网站步骤是如何做自媒体和网站签约赚点击
  • 网站建设的闪光点网站 备案 拍照