gpt4 book ai didi

typescript - 需要澄清整洁的架构和存储库模式

转载 作者:行者123 更新时间:2023-12-05 07:15:56 25 4
gpt4 key购买 nike

在过去的 4 周里,我一直在阅读关于这个主题的 Material ,我在 github 上看到了很多实现,到目前为止我理解了目的,但是我在实现方面遇到了一些问题。

让我们从用例开始。如果我是正确的,那么 usecase 包含业务逻辑并执行操作,例如通过 repositories 验证或获取一些数据并返回一些业务对象。

在应用业务层为repository定义接口(interface),在interface-adapters层实现。

repository 实现存在于 interface-adapters 中,需要从外部注入(inject)的某种数据源(数据源存在于何处),我应该在中实现数据源接口(interface)吗这一层?

最让我困惑的是模型和DTO。 models 到底是什么,目的是什么,为什么我要使用 model,我使用 mongoose 作为 ORM,所以,我假设你的模式是 型号

这意味着,model 只是您从外部获取的一些数据(例如:Api、DB 等),然后您将这些数据映射到实体,如果是这样,我应该在哪里做映射(在存储库或用例或数据源中)?

我还没有接触过 Controller 、演示器或 View 模型,因为我已经很困惑了。

最佳答案

在纯粹“整洁”的架构中,每一层都应该使用自己的模型。因此,您的 ORM 模式模型与您的实体或 DTO 不同(但它们会相互映射)。从模式模型到实体的映射应该在存储库返回实体时发生。在您需要 DTO 的地方,可能是为了展示,您可以在该层上进行映射。

关于typescript - 需要澄清整洁的架构和存储库模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59429700/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com