温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

web备忘录模式的动机是什么

发布时间:2022-01-13 16:57:55 来源:亿速云 阅读:137 作者:iii 栏目:大数据

今天小编给大家分享一下web备忘录模式的动机是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

意图

由对象根据外部环境的要求生成保存内部状态的数据并交给外部保存。外部环境在需要的时候可以将该数据返还给这个对象并恢复之前保存的状态。

动机

经常会有需求保存某个对象的内部状态。例如在某些重要的系统中,为了防止操作失误,会希望将设定内容的状态保存起来,从而在必要的时候有办法将其恢复。在很多软件中使用的undo功能也有类似的需求。恢复对象原来状态的一个必要条件就是先取得并保存对象的状态。

取得对象状态的方式有两种。一种是从外部取得。但是这种方式需要利用者了解对象的内部状态,这违反了封装的原则。可能会造成不必要的耦合关系。另外一种方式是让用户自己生成保存状态的数据,这种方式很好地维持了对象的封装,简化了利用者的工作。

web备忘录模式的动机是什么

例如上图中的图形编辑软件,随着用户对矩形框的拖动操作。连接线的状态会发生变化。当用户向右拖动下面的矩形框时,连接线位置也会随之发生变化。但是由于需要维持连接线和矩形框的连接关系。最终连接线停留在两个矩形的右下角和左上角。实现这个操作的取消操作并不容易:因为最后到达右侧状态的初始状态不止一种。当用户将下面的矩形框拖回原来位置的时候,软件无法知道连接线应该恢复到什么位置。

这时比较现实的方法就是保存拖动之前连接线的状态。当用户开始拖动矩形框时软件保存连接线和矩形框的状态,当需要执行撤销操作时候,软件恢复连接线和矩形框的状态即可。

如果我们将取得连接线的状态和恢复连接线的状态这两个操作都交给连接线对象自己的话,这就是备忘录模式的一个应用实例。

以上就是“web备忘录模式的动机是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

web
AI