因此,我们有一个需要保存并从磁盘加载其状态的应用程序。
我们目前已经在一个对象中获得了状态,并且该对象正通过XML序列化程序对象被直接序列化为XML。我已经和这个项目的其他开发人员讨论过这个问题,他似乎认为这是一个完美的解决方案。他断言,将模型放在磁盘上与内存中的表示完全相同是理想的。
我觉得数据保存到磁盘的方式需要与它在内存中的表示形式解耦,这样我们就可以修改其中之一,而不会对保存的格式造成破坏性的更改。更不用说XML序列化程序要求所有内容都需要是读/写的,而在对象中可能有许多情况需要是只读的。
问题是,在将内存数据序列化为XML方面,有一种最佳实践。是直接从XML合成您的对象,还是通过使用其唯一目的是提供给XML序列化程序的对象来解耦该过程?
发布于 2010-09-28 02:48:45
因此,要么:
a)使用他的解决方案,直到它不再起作用
或
b)提出您自己的解决方案来解决您指出的问题。
有一件事可能值得探讨:您可以考虑像db4o这样的对象数据库,它可能能够处理对象的保存/加载以及您对类所做的大多数更改,但对于希望能够直接编辑磁盘上状态的情况可能不太理想(您可以做到这一点,但您必须跳过几个障碍)。
https://stackoverflow.com/questions/3806524
复制相似问题