示例场景
我有一个 AWS S3 存储桶,其中包含许多我的应用程序需要访问的对象。应用程序使用一些可用的信息来形成 S3 对象名称、获取对象并对对象数据运行转换,然后再将其用于特定于应用程序的进一步处理。
我想创建一个模块来保存形成对象名称的逻辑,从 S3 获取它,然后对对象数据运行转换,这样我就不会在多个地方重复这些函数。
在这种情况下,我应该将 AWS SDK 添加为模块中的依赖项吗?请记住,应用程序可能必须使用 AWS SDK 来执行特定于该应用程序的其他操作,或者可能根本不需要它。
一般来说,解决此类问题的最佳方法是什么,即在哪里添加依赖项?以及如何管理不同的版本?
最佳答案
如果您的代码必须从 AWS SDK 访问包,那么您别无选择,只能将其添加为依赖项。如果没有,并且逻辑是通用的,或者您可以将其从 AWS SDK 中抽象出来,那么您就不需要依赖项(事实上,像 go mod tidy
这样的 go 工具将删除来自 go.mod
的依赖(如果添加的话)
关于go - 如何为别人创建golang模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55972122/