2

在使用六角架构的 DDD 实现中,应用程序可能具有端口(接口)和适配器(客户端)。在我当前的项目中,我正在实现基于事件驱动的微服务。我有一个域应用程序服务层和基础设施层和适配器层(用于命令侦听器)。我搜索了许多实现和基础设施层,其中包含适配器和端口。现在基础设施层一次将调用应用程序服务层,根据我的理解这是错误的。

这是正确的实现吗?在哪里添加端口/命令侦听器。

4

1 回答 1

2

我在 DDD 层和六边形架构之间进行了以下匹配:

  • 驱动程序端口是 DDD 应用程序服务接口,它们是六边形的左边缘。

  • 六边形内部分为DDD应用服务实现和DDD领域模型。

  • 驱动端口(例如存储库接口,或由基础设施实现的服务接口)是六边形的右边缘。

  • 六边形的内部实现驱动端口并使用驱动端口。

  • 驱动程序适配器(例如,REST API 控制器或 Web 应用程序)使用/调用驱动程序端口。驱动适配器是 DDD 的表示层。

  • 驱动适配器实现驱动端口。驱动适配器是 DDD 的基础设施层。

如果你想看一看,这是我写的一篇解释六边形架构的文章:

https://softwarecampament.wordpress.com/portsadapters

希望能帮助到你。

于 2019-02-09T19:46:53.967 回答