DDD:计算器(服务)有很多输入

时间:2015-09-03 07:00:29

标签: c# .net architecture domain-driven-design

我想知道如何解决这个问题。我有一个模型,其中进行了大量的计算。现在我想知道如何解决以下问题:

我可以将特定CalculatorServices中的所有计算拆分,但最后我会想要一个计算器服务,它是计算的根。这将需要大量的输入。

所以我可以从中走2条路线:

  • 向计算器(服务)提供实体,对我来说似乎是合乎逻辑的。
  • 使计算器(服务)完全与实体无关,因此可以在不提供实体图的情况下使用它们。我认为这很奇怪,因为它会让我在某种输入对象图中复制实体图,henche(几乎)重复代码。

我当然可以尝试将计算放在不同的实体上并从那里开始。

你们/女孩会采取哪种方式或其他方式?

更新:

计算不得用于报告。计算实际上是域的一部分,因为这里的域是力的数学模型,但我不能在不违反非披露协议的情况下进入细节:(

所以举一个例子;我们最好能想到计算器(=服务/实体?),就像分析交易系统中那样。

1 个答案:

答案 0 :(得分:0)

  

你们/女孩会采取哪种方式或其他方式?

一种方法是将计算过程分成几部分:

  1. 导入数据
  2. 计算
  3. 结果展示
  4. 导入数据通过服务将大量数据(输入)加载到数据库中。

    计算将业务规则应用于数据库中的数据,创建结果并将结果保存到数据库中。

    结果演示提供了从各个角度查看计算结果的方法。

    主要思想是尽可能多地在服务中本地化数据,以便在每次计算方法调用时都不会从客户端转到服务。