你如何命名golang中的多项包?

时间:2018-06-13 16:49:37

标签: go naming-conventions

go包的命名约定已有详细记录,golang.org's blog表明:

  

良好的包装名称简短明了。它们是小写的,没有under_scores或mixedCaps。它们通常是简单的名词,例如[描述已删除]:时间,列表,http

然后,同一指南提供了两个不良名称的例子:

  

以下是两个名称的例子,这些名称在其他语言中可能是好的风格但在Go中不合适:computeServiceClient,priority_queue

指南中没有说明当你的包装具有非常特殊的目的时,该怎么做才真正不适合作为一个单词的名词。

我们有一个名为Rhino Horn的库,用于查找意外泄露的凭据。由于运行Rhino Horn需要资源密集的原因,我已经被指示在Golang为Rhino Horn编写一名主管,监控其性能并在需要时快速关闭。 Rhino Horn不是用go编写的,而且是一个完全独立的项目。

Golang命名约定会让我将Rhino Horn Supervisor命名为什么?

1 个答案:

答案 0 :(得分:3)

我认为有很多选择。其中一些是:

  • 如果您的项目仅专注于监督犀牛角,您可以将项目命名为rhino-horn-supervisor,而不是打包任何只有平顶级文件main.gohornoutput.go或w / e < / LI>
  • 如果监督犀牛角是较大应用程序的一个组成部分,可能会有很多设置,其中一个可能是supervisors包,而犀牛角是一个单独的文件及其实现
  • 还有子包的可能性,supervisors/rhinohorn
  • 您也可以使用rhinohorn文件制作supervisor.go个包:P