支持和反对对象处理自身持久性的原因

dea*_*vmc 2 c# persistence design-patterns code-design

我正在研究使用独立存储在Windows Phone中进行持久性建模的不同选项.我提出的一个想法是每个对象处理它自己的概念(当然是理所当然的)持久性,而不是为了保存对象而创建一个存储库或其他这样的实体.

我似乎无法找到关于这种持久性方法的任何好信息,这让我相信我可能偶然发现了一种反模式.

有没有人以这种方式接近坚持?如果是这样的话,你对这种方法的看法是什么?

n8w*_*wrl 6

软件开发中有几个不可否认的事实:

  1. 在您了解原型之前,原型就会成为产品.
  2. 针对"仅适用于platform-x"的应用程序很快将移植到平台-y.
  3. 数据存储将发生变化.可能是#2的结果.

还有更多(:))但这些足以回答你的问题:

使用存储库,这样您的对象就可以进行测试,对持久性一无所知,并且您可以换出数据存储(甚至可以通过线路!)也可以为此预先计划.