2009-11-11 126 views

回答

3

收集要求。对于架构而言,非功能需求通常比功能需求更重要。

1

我会说“无论你与谁舒适”。

如果tou使用的是关系模型,那么您将不得不与OO世界的差距缩小(例如使用ORM)。

我通常开始使用数据库,但系统的整体类图可以极大地改进数据库设计阶段。

该方法学也是一个非常重要的事情要考虑。敏捷方法和TDD将更好地处理模式中的剧烈变化,因此您可以轻松地返回并添加/删除表格,字段(或类),并且在您感觉喜欢时使用这两种策略。

1

对于你......我会第一个去与类结构,那么数据库的两个选项...

通常阶级结构将代表应该由数据库中容纳的业务对象,但是这是一个一般情况下,有很多例外。

  • 通常对于大多数“以业务为中心”的应用思考现实世界的业务对象,则其作为抽象类在其概念化数据库收集表和关系。如果你是类设计相对好的类和数据库表应该没有太大的差别。
  • 如果您的专家系统或数据挖掘中存在“以信息为中心的问题”,那么请先查看数据库。
0

数据库或(永久)类软件的只是一小部分......

通常情况下,人们选择他们知道更好的(SQL或代码)技术,并定义根据该另一个。

必须考虑使用ORM。

0

一步一步地同时做到这一点。在看另一个之前,不要尝试获得“100%完整”。

原因是对象和数据库之间没有1:1映射。例如,创建对象树非常简单。将数据映射到数据库时,大多数ORM框架都存在严重问题。此外,通常不可能在不重写所有代码的情况下将事务处理改造为现有的应用程序。

从一个出色的数据库模型开始,可能会让您处于不清楚如何用对象模型表示该模型的情况。数据库问题将泄漏到您的对象模型中。

这就是为什么你必须同时发展你的应用程序的两个部分,学习你添加的功能,保护你的假设与自动化测试。