我应该通过 AWS SDK 进行抽象吗?

问题描述 投票:0回答:1

我正在使用 AWS SDK,想知道是否值得对其进行抽象。通过抽象我的意思是:

  • 创建一个库,我可以在其中为 IQueue、IFileStorage 等定义接口
  • 为 IQueue 的 SqsQueue 或 IFileStorage 的 S3Storage 等接口创建实现

我在考虑两种情况:

  • 根据DDD实现的项目,在Ports & Adapters架构下开发。我认为在应用层这将是正确的方法。

  • 旨在填充数据仓库的大数据项目。这里没有复杂的域模型。我不确定这里的好处。自动化测试将更具可读性和清晰度。也许使用不太复杂的接口进行模拟会更容易。这将以在接口库中创建大量样板为代价。

在这两种情况下,最好的方法是什么?

amazon-web-services coding-style clean-architecture
1个回答
0
投票

正如您已经指出的:这是一个权衡的决定。当关注可移植性或仅关注将来更改此类依赖项的成本时,将依赖项 (AWS SDK) 抽象出来是个好主意。缺点是额外的代码,但也可能是性能。 尽管如此,在大多数情况下,让您的应用程序(至少是其核心)与“托管环境/框架”分离可能更好。

© www.soinside.com 2019 - 2024. All rights reserved.