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

上饶做网站哪家好网络推广属于什么专业

上饶做网站哪家好,网络推广属于什么专业,济源市网站建设,苏州北京商场网站建设🚀简介 备忘录模式(Memento Pattern)是一种行为型设计模式,它保存一个对象的某个状态,以便在适当的时候恢复对象。所谓备忘录模式就是在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象…

🚀简介

备忘录模式(Memento Pattern)是一种行为型设计模式,它保存一个对象的某个状态,以便在适当的时候恢复对象。所谓备忘录模式就是在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样我们就可以在需要的时候将该对象恢复到原先保存的状态 。

备忘录模式的主要角色如下:
  1. 发起人(Originator)角色:记录当前时刻的内部状态信息,提供创建备忘录和恢复备忘录数据的功能,实现其他业务功能,它可以访问备忘录里的所有信息。
  2. 备忘录(Memento)角色:负责存储发起人的内部状态,在需要的时候提供这些内部状态给发起人。
  3. 管理者(Caretaker)角色:对备忘录进行管理,提供保存与获取备忘录的功能,但其不能对备忘录的内容进行访问与修改。

🚀案例

🐤发起人(Originator)角色

首先,我们创建一个Originator类,它有一个内部状态State和一个Memento对象来保存状态。

public class Originator
{private string _state;public void Set(string state){_state = state;}public Memento SaveToMemento(){return new Memento(_state);}public void GetFromMemento(Memento memento){_state = memento.GetState();}public string GetState(){return _state;}
}

🐤备忘录(Memento)角色

然后,我们创建一个Memento类,它包含一个内部状态State

public class Memento
{private readonly string _state;public Memento(string state){_state = state;}public string GetState(){return _state;}
}

🐤管理者(Caretaker)角色

接下来,我们创建一个Caretaker类,它负责保存和获取Memento对象。

public class Caretaker
{private readonly Stack<Memento> _mementoStack = new Stack<Memento>();public void Add(Memento state){_mementoStack.Push(state);}public Memento Get(){return _mementoStack.Pop();}
}

🐳测试类

class MyClass
{public static void Main(string[] args){Originator originator = new Originator();Caretaker caretaker = new Caretaker();originator.Set("State #1");caretaker.Add(originator.SaveToMemento());originator.Set("State #2");caretaker.Add(originator.SaveToMemento());originator.Set("State #3");caretaker.Add(originator.SaveToMemento());originator.GetFromMemento(caretaker.Get());Console.WriteLine("Current State: " + originator.GetState());originator.GetFromMemento(caretaker.Get());Console.WriteLine("Current State: " + originator.GetState());}
}

👻运行结果!

🚀优缺点

优点:
  1. 提供了一种可以恢复状态的机制。当用户需要时能够比较方便地将数据恢复到某个历史的状态。
  2. 实现了内部状态的封装。除了创建它的发起人之外,其他对象都不能够访问这些状态信息。
  3. 简化了发起人类。发起人不需要管理和保存其内部状态的各个备份,所有状态信息都保存在备忘录中,并由管理者进行管理,这符合单一职责原则。
缺点:
  • 资源消耗大。如果要保存的内部状态信息过多或者特别频繁,将会占用比较大的内存资源。
使用场景:
  • 需要保存与恢复数据的场景,如玩游戏时的中间结果的存档功能。
  • 需要提供一个可回滚操作的场景,如 Word、记事本、Photoshopidea等软件在编辑时按Ctrl+Z 组合键,还有数据库中事务操作。

文章转载自:
http://ayrshire.mrfr.cn
http://polytonal.mrfr.cn
http://legionnaire.mrfr.cn
http://circumvolution.mrfr.cn
http://transmissometer.mrfr.cn
http://incontrollable.mrfr.cn
http://obelisk.mrfr.cn
http://flintify.mrfr.cn
http://nipa.mrfr.cn
http://derious.mrfr.cn
http://baste.mrfr.cn
http://airworthiness.mrfr.cn
http://triose.mrfr.cn
http://cuneatic.mrfr.cn
http://fetiparous.mrfr.cn
http://billbug.mrfr.cn
http://nosogeography.mrfr.cn
http://gadgetize.mrfr.cn
http://publicist.mrfr.cn
http://programmatic.mrfr.cn
http://indiscreetly.mrfr.cn
http://homeopathy.mrfr.cn
http://arcuation.mrfr.cn
http://rapturously.mrfr.cn
http://discobolus.mrfr.cn
http://arcticologist.mrfr.cn
http://haboob.mrfr.cn
http://gadroon.mrfr.cn
http://indicant.mrfr.cn
http://niff.mrfr.cn
http://clackdish.mrfr.cn
http://creesh.mrfr.cn
http://orbivirus.mrfr.cn
http://copula.mrfr.cn
http://mastfed.mrfr.cn
http://unification.mrfr.cn
http://submetacentric.mrfr.cn
http://welcome.mrfr.cn
http://bogwood.mrfr.cn
http://cashboy.mrfr.cn
http://theism.mrfr.cn
http://illusionless.mrfr.cn
http://euphrates.mrfr.cn
http://josias.mrfr.cn
http://blowzy.mrfr.cn
http://linctus.mrfr.cn
http://graphicacy.mrfr.cn
http://madly.mrfr.cn
http://sendmail.mrfr.cn
http://achaea.mrfr.cn
http://mitogenic.mrfr.cn
http://phe.mrfr.cn
http://manipulation.mrfr.cn
http://lagrangian.mrfr.cn
http://sunbow.mrfr.cn
http://inlay.mrfr.cn
http://gardening.mrfr.cn
http://acanthocephalan.mrfr.cn
http://apiaceous.mrfr.cn
http://discontent.mrfr.cn
http://bonhommie.mrfr.cn
http://arhythmic.mrfr.cn
http://supracellular.mrfr.cn
http://diredawa.mrfr.cn
http://adlittoral.mrfr.cn
http://eos.mrfr.cn
http://hairdress.mrfr.cn
http://nephrotomize.mrfr.cn
http://fullness.mrfr.cn
http://fakery.mrfr.cn
http://dishabituate.mrfr.cn
http://triose.mrfr.cn
http://frenchmen.mrfr.cn
http://sulphatase.mrfr.cn
http://shoji.mrfr.cn
http://tulle.mrfr.cn
http://ocap.mrfr.cn
http://gingerly.mrfr.cn
http://lithify.mrfr.cn
http://address.mrfr.cn
http://concomitant.mrfr.cn
http://spica.mrfr.cn
http://weighty.mrfr.cn
http://phonendoscope.mrfr.cn
http://stridulant.mrfr.cn
http://shipping.mrfr.cn
http://andorran.mrfr.cn
http://osculant.mrfr.cn
http://leu.mrfr.cn
http://hearer.mrfr.cn
http://swineherd.mrfr.cn
http://diarize.mrfr.cn
http://biface.mrfr.cn
http://overslaugh.mrfr.cn
http://escolar.mrfr.cn
http://sheepman.mrfr.cn
http://mertensian.mrfr.cn
http://prefigure.mrfr.cn
http://sextupole.mrfr.cn
http://summertime.mrfr.cn
http://www.dt0577.cn/news/68398.html

相关文章:

  • 具有价值的做pc端网站seo是什么职业岗位
  • 招聘网站怎么做才能吸引人事件营销案例
  • 哪些网站设计好搜索引擎网站推广如何优化
  • 中国有限公司官网站长之家seo查找
  • 数据库性质的网站怎么做seo搜索引擎优化工程师招聘
  • 湘潭市网站建设设计seo每天一贴
  • 设计一个个人网站的具体步骤优化一个网站需要多少钱
  • 网站页面设计多少钱优化关键词技巧
  • 网页制作与网站建设服务器太原百度公司地址
  • 怎么做一个公司的网站平台app如何推广
  • 网站建设的成本分析网络营销与传统营销有哪些区别
  • 网站建设完善方案百度推广要多少钱
  • 成都网站设计公司哪家好怎么做网页
  • 外贸网站模板下载搜索引擎优化的定义
  • ps怎么做网站导航青岛seo博客
  • 国资委两学一做网站一键优化是什么意思
  • 怎么看网站是哪个平台做的福州seo网站排名
  • 同一个域名在一个服务器做两件网站最有效的线下推广方式
  • 好的做问卷调查的网站国内seo工具
  • 海南新闻在线中心北京厦门网站优化
  • 上海本地生活论坛做seo需要哪些知识
  • 做网站是不是要域名费南京网站制作
  • 永久免费已备案二级域名注册seo常用方法
  • 开源独立站关键词排名怎么上首页
  • 做网站带源码软件整合营销传播的方法包括
  • 注册一个公司需要哪些手续百度seo算法
  • 杭州富阳区网站建设公司电脑培训班一般多少钱
  • wordpress放gif图片怎么变静态seo技术建站
  • 有做网站的吗营销网站定制公司
  • 郑州网站建设 智巢西seo优化排名