-1

对于一个爱好项目,我正在构建一个应用程序来跟踪我的资金。注册所有进出的东西。我使用 sqlite 作为数据库后端。我想到了两种数据访问模型。

  • 创建一个主对象作为一种数据库连接器,其中包含执行查询并提供所需数据集作为对象列表的方法
  • 让需要数据的对象自己执行查询

其中哪一个是“最好的”,为什么?还是有不同的、更好的模型?

4

2 回答 2

1

后一种选择更好。在第一个选项中,您最终将不得不触摸您的通用数据访问对象,以便对代码进行任何不仅仅是显示逻辑更改的更新。如果您有不同的数据访问对象,那么您将拥有更多可测试、可维护的代码。

我建议您阅读一下模型-视图-控制器范例。关于它的维基百科文章是一个好的开始:http ://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller 。

此外,您没有说明您使用哪种语言/平台进行编码,但大多数平台都有许多选项可用于从数据库中自动生成数据访问类的起点。你可能会发现类似的东西很有用。

于 2012-08-05T18:45:20.837 回答
0

真的很多,要避免的事情是让“相同”的 sql 散布在你的代码库中。

关键点是。您刚刚向 Table1 添加了一个新列。当您在文件“Table1”中查找时,您将获得多少次点击以及在哪里。

如果你使用一个类并且有很多数据库操作,它很快就会变得非常混乱,但是如果你有一个接口(比如 IModel)和一个实现,你可以很容易地交换后端。

那么有多少 db 操作,以及您离开 SqlLite 的可能性有多大。

于 2012-08-05T19:38:59.880 回答