我正处于个人使用的数据库应用程序的计划阶段。我有一些计划好的数据库结构,但是当我想到我将如何编写程序时,它让我想知道我是否按照正确的顺序执行此操作。
我应该首先计划哪个,db结构还是类?
答案 0 :(得分:6)
我认为首先设计数据模型是一个非常好的主意。
如果应用程序是数据库驱动的,那么在尝试编写任何代码之前,最好能够充分了解数据模型的外观。
您仍然可以将您认为类的看法视为您对数据模型的看法。当您开始编写代码时,在确定需求时将这一点保留在您的脑海中会有所帮助。
当然,当您开始编写代码时,您可能不得不重新访问数据结构,因此这是一个迭代过程,但在项目开始时进行良好的规划是一个好主意。
答案 1 :(得分:3)
我认为您将从以数据为中心的以应用程序为中心的人员中获得不同的答案。我个人总是从数据开始,但应用程序员可能会从这些类开始。
实际上,我认为你需要同时处理这两个问题。
答案 2 :(得分:1)
它们通常一起开发,尽管通常最容易开始设计数据库的基本结构,然后转移到代码中。您会发现,根据应用程序的大小,数据库会在最终产品的过程中经常更改。
答案 3 :(得分:1)
我通常尽我所能,然后根据自己为自己编写的规划/设计规范开始创建数据库。
然后,我使用Linq-To-SQL之类的东西来生成一些基本的DAL类 - 将它们包装在管理我的大多数CRUD情况的存储库类中。
根据应用程序的复杂程度,然后我编写一个直接使用存储库(快速/脏)的GUI,或者编写一个包含功能的域逻辑类(以及可能的数据传输对象或哑POCO)在存储库中。
显然,最好的计划会遗漏事情,因此请务必考虑到您必须返回并添加字段,更改类型,添加关系等。
答案 4 :(得分:1)
如果您的系统的目的是存储,检索和报告数据,那么我会说,首先设计数据库是合适的。
另一方面,如果系统的目的是使用软件实现业务流程或流程,那么首先设计“域模型”,将业务流程建模为对象/通常会更有效率类,然后确定如何在以后将它们保存到数据库中。