【发布时间】:2008-11-12 16:10:52
【问题描述】:
我在 .NET 上看到过两种不同的 memento 实现。
其中一个非常简单 - 对象创建自己的另一个实例。
另一个是使用 BinaryFormatter 和 MemoryStream 序列化对象。
首选方法是什么?谁能指出每种方法的优缺点?
顺便说一句,我有兴趣从资源使用/开发人员生产力的角度来看待它。我很抱歉没有先说明这一点。
假设 memento 不需要持久化,那是首选?
从开发人员生产力的角度来看,序列化胜出。对于任何对象来说,几行通用的代码比手动创建一个可能涉及私有构造函数、字段分配等的克隆更有效。
但话又说回来,也许序列化很重 - 我不确定。
【问题讨论】:
标签: .net design-patterns memento