类似Golang变量的命名约定

Joh*_*yil 7 naming-conventions go

我有几个案例,我有相同的基础值表示为多种类型.

示例:

userIDString := r.URL.Query("id")
userID, err :=  strconv.Atoi(userIDString)
Run Code Online (Sandbox Code Playgroud)

我需要在不同的地方使用上述两个变量.

同样

recordSeparator = rune(30)
recordSeparatorString = string(30)
Run Code Online (Sandbox Code Playgroud)

我的方法是将这些变量命名为惯用吗?如果不是这种情况的理想命名约定?

PS:我不认为这个问题主要是基于意见的,我正在寻找引用流行的go项目/标准库中的命名约定的答案.

Mic*_*las 12

该领域可能最权威的书,即Go编程语言,在第10.6包和命名中讨论了这个主题:

  • 保持名字短,但不要让他们神秘(useruserName)
  • 包名通常采用单数形式(除非与预先声明的类型存在冲突)
  • 选择名称以便他们在包的上下文中读取,例如net.IP

此外,还有一个漂亮的幻灯片,其中有一些名称可以解决一些问题,还有一些信息丰富的reddit线程可能也很有用.

根据我的经验(除了上面提到的)之外的大多数命名约定都是项目或公司特定的.

  • 您对所涉及的场景有任何命名建议吗? (2认同)