2010-05-13 71 views
4

我正处于个人使用的数据库应用程序的规划阶段。我已经计划好了一些数据库结构,但是当我考虑如何编写这个程序时,它让我怀疑我是否按照正确的顺序来完成这个任务。规划数据库应用程序

我应该先计划哪个db结构或类?

回答

6

我觉得首先设计数据模型是一个非常好的主意。

如果应用程序是数据库驱动的,那么即使尝试编写任何代码,也应该对您的数据模型看起来像什么样子有一个很好的理解。

您仍然可以概念化您认为类可能看起来像您对数据模型的思考。当你决定你的需求时,将它保留在你脑海的背后,当你开始编写代码时也会有所帮助。

当然,当你开始编写代码时,你可能不得不重新访问你的数据结构,所以这是一个迭代过程,但是在项目开始时进行良好的规划是个好主意。

+3

+1:数据永远存在,处理来来往往。 – 2010-05-13 21:54:59

+0

@S。洛特 - 这是一个很好的报价,我必须记住这一点。 – jaywon 2010-05-13 23:01:46

1

它们最经常一起开发,尽管开始设计数据库的基本结构通常是最容易的,然后转向代码。您会发现,根据应用程序的大小,数据库会随着最终产品的方式而频繁更改。

1

我通常会尽我所能来计划,然后根据我为自己写的规划/设计规范开始创建数据库。

然后,我使用类似Linq-To-SQL的东西来生成一些基本的DAL类 - 将它们包装在一个处理大部分CRUD情况的存储库类中。根据应用程序的复杂性,我编写一个直接使用仓库(快速/脏)的GUI或者编写一个域逻辑类(可能是数据传输对象或哑POCO)在存储库中的功能。

显然,最好的规划错过的东西,所以请确保您在考虑,你必须要回去,并添加字段,改变类型,添加关系等

+0

这很有趣,我觉得我明白你的意思,但它主要是在我头上。你的意思是在计划完成之后,接下来创建一个ORM,然后为你的ORM编写代码? – ChrisC 2010-05-16 17:08:51

+0

是的,差不多。规划,建立在SQL Server中,设置Linq-To-SQL,然后开始编码。 – Nate 2010-05-17 14:40:51

3

我想你会从以数据为中心的应用程序中心人员得到一个不同的答案。就我个人而言,我总是从数据开始,但应用程序员可能会从这些类开始。

在现实中,我认为你需要在两个同时工作。

+0

+1:总是从数据开始。 – 2010-05-13 21:55:23

1

如果你的系统的目的是存储,检索和报告数据,那么我想说,首先设计数据库是合适的。

另一方面,如果系统的目的是使用软件实现一个或多个业务流程,那么首先设计“领域模型”,将业务流程建模为对象通常会更有效率/ classes,然后确定如何将它们保存到/从数据库中。