Domain driven design 在域驱动设计中使用外部API调用作为数据源

Domain driven design 在域驱动设计中使用外部API调用作为数据源,domain-driven-design,Domain Driven Design,我有一个两层应用程序,底层用于从外部API收集数据并将其添加到数据库,第二层用于从数据库返回数据,该数据基于我从外部API调用收集的数据。 因此,我设法将外部API调用与域中的接口一起放入基础结构存储库中。 因此,通常我遇到的困难是将收集的数据保存在数据库中,而不在域中为这些数据创建模型,因为这些数据在外部API上是可靠的。我希望这两个层完全分离,收集数据并返回其他数据,而不违反领域驱动设计。我将在这里尝试回答的是DDD如何提供帮助,并强调在应用DDD原则找到有用的设计和适当的实现之后,导入是一

我有一个两层应用程序,底层用于从外部API收集数据并将其添加到数据库,第二层用于从数据库返回数据,该数据基于我从外部API调用收集的数据。 因此,我设法将外部API调用与域中的接口一起放入基础结构存储库中。
因此,通常我遇到的困难是将收集的数据保存在数据库中,而不在域中为这些数据创建模型,因为这些数据在外部API上是可靠的。我希望这两个层完全分离,收集数据并返回其他数据,而不违反领域驱动设计。

我将在这里尝试回答的是DDD如何提供帮助,并强调在应用DDD原则找到有用的设计和适当的实现之后,导入是一个实现细节

因此,您需要应用程序/绑定上下文的数据,这些数据将必须生成统计数据(如果您可以在此处添加更多业务语言,DDD将更加有用)。此应用程序的商业用途是什么?语言(普遍语言)和边界(BC)是什么?它将如何与其他上下文进行互操作(上下文映射)


您需要实现这个模型,在这里您可以使用定义的概念并定义一个持久性模型(API中使用的语言可能不是应用程序使用的语言),并且在导入数据期间您可能需要一些验证和业务规则。因为您可以定义确保系统完整性的聚合,所以我在这里猜测。但这是一个我将如何应用DDD的场景,并指出我们不能将DDD应用于进口。但是导入可能是一个实现细节。

问题是什么?问题是将与从外部API收集数据相关的模型放在反腐败层的何处。这可能会有帮助:或者这样:一般来说,这个反腐败层可以由模型、服务和存储库组成,这些模型、服务和存储库与应用程序的其余部分分离,但它仍然会对应用程序的功能产生重大影响?如果可能的话,您可以给我提供一个使用外部API调用模型和服务的示例。