快照模式 vs 命令模式:一篇分清什么时候用谁
在做带撤销、回滚、历史记录的功能时我们最常纠结两个设计模式快照模式备忘录模式和命令模式。很多同学容易混淆其实核心区别一句话就能记住快照存数据命令存动作。下面用最清晰、最好记的方式对比两者适用场景看完就能直接选型。一、快照模式存数据 / 状态适合场景状态简单、操作少不想写复杂的反向 undo 逻辑状态结构很轻量比如一个数字、一段短文本不需要精细撤销只想一键回到某一刻对内存占用不太敏感存档即可典型使用场景游戏存档/读档配置文件一键恢复简单文本编辑器的整体撤销一句话总结状态小、懒得写反向 → 快照二、命令模式存动作 / 操作适合场景操作种类多增、删、改、拖、画等需要一步步撤销 / 重做状态体积大图片、大型文档、画布频繁存快照太占内存需要记录操作日志、任务队列、宏命令典型使用场景Photoshop、Figma、画板工具IDE 代码编辑器 CtrlZ复杂表单操作历史支持宏命令、任务队列的系统一句话总结操作多、状态大、要精细撤销 → 命令三、终极口诀记住就够状态小、懒得写反向 → 快照操作多、状态大、要精细撤销 → 命令理解到这一步面试、日常开发选型都能说得清清楚楚再也不会纠结用哪个了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2487455.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!