【发布时间】:2018-11-23 08:13:21
【问题描述】:
go 包的命名约定有据可查,golang.org's blog 声明:
好的包名称要简短明了。它们是小写字母,没有下划线或混合大写字母。它们通常是简单的名词,例如[descriptions removed]:时间、列表、http
同一指南还提供了两个坏名的例子:
以下是两个名称示例,它们在其他语言中可能是不错的风格,但在 Go 中不太适合:computeServiceClient、priority_queue
指南没有说明的是,当您的包裹具有非常特定的用途,但实际上不适合作为单字名词时该怎么办。
我们有一个名为 Rhino Horn 的库,内部用于查找意外泄露的凭据。由于运行 Rhino Horn 占用资源的原因,我被指示在 golang 中为 Rhino Horn 编写一个主管,以监控其性能并在需要时快速关闭。 Rhino Horn 不是用 go 编写的,是一个完全独立的项目。
golang 命名约定让我将 Rhino Horn Supervisor 命名为什么?
【问题讨论】:
-
我可能会使用包名
rhinohorn和/或supervisor。或者可能是包rhinohorn内名为Supervisor的类型。你真的需要在代码结构中引用犀牛角吗?也许应用程序可以只监控东西并配置为监控 Rhino Horn,但我意识到这可能并不容易,具体取决于您的实际部署情况。 -
我认为你应该只使用 rhino_horn_supervisor。随心所欲地编写代码,不要让一些愚蠢的指导方针限制你的想法。 MixedCaps 可能存在文件名不区分大小写的 os 错误。我认为您应该避免在文件名中使用大写字母。
标签: go naming-conventions