我正在努力理解一些概念,但却无法理解:
Ports and Adapters架构中的用例是什么?
用例实现是什么样子的?
用例关注点是什么?
它在基础设施或域中的位置在哪里?它说应该放在应用程序中,那么应用程序核心和应用程序服务是不同的吗?
在左侧,适配器依赖端口并注入端口的具体实现,其中包含用例。在这一侧,端口及其具体实现(用例)都属于应用程序;
https://herbertograca.com/2017/09/14/ports-adapters-architecture/#what-is-a-port
这段引用让我困惑了...因为据我所知,主要适配器可以是任何请求您的业务逻辑的东西(它对您提供的内容感兴趣),例如WebAPI、MVC、Testing、ConsoleApp。
在左侧,适配器依赖于端口,并注入端口的具体实现,其中包含用例。
所以我认为它是指将你的业务逻辑注入到WebApiController构造函数中。
在这一侧,端口及其具体实现(用例)都属于应用程序;
那么是什么?谁是这个应用程序?是WebApi吗?还是域?另外,据我所知,用例是我的业务逻辑的实现,例如设计会是这样的吗?
Client :
WebApiController(IMyBusinessServicePort service)
Infrastructure :
ImplementingPrimaryAdapter : IMyBusinessServicePort { }
ImplementingSecondaryAdapter : ILoggingPort { }
Domain :
ImplementMyBusinessLogicService : IMyBusinessLogicService
那么WebApiController将使用由ImplementingPrimaryAdapter提供的实现,而不是我的领域中的某些东西吗?我不明白。请解释一下。