【发布时间】:2016-12-12 18:06:26
【问题描述】:
一个应用程序使用几种类型的编码为对象的数据。这些对象需要持久化,并且存储后端可能会发生变化(文件系统、sqlite、nedb 是可能的选项)。
设计相关代码以尽量减少更改存储的麻烦的最佳方法是什么?我将传递我的对象的特定 Store 对象?我的对象是否继承自存储?我的对象是否应该“自我存储”?
关于信息,实际案例是使用 node-webkit (javascript) 的本地 webapp,但答案可能不依赖于语言,只要它是面向对象的。
【问题讨论】:
-
imo,对象不应该
self-store,因为这是所有对象都需要的额外耦合层——即使是临时对象。 imo,存储库模式对此很有用。它将对象与实际存储分离。如果使用接口定义,它可以非常灵活,尤其是在测试等时。 -
看看@数据映射器
标签: oop object design-patterns