切片类型 fields/variables 的命名约定
Naming convention for fields/variables of type slice
对于一片 int ID,变量或结构字段的名称应该是什么?
例如,具有 []int 类型用户 ID 列表的结构:
type Result struct {
UserIDs []int
}
或没有尾随 s:
type Result struct {
UserID []int
}
很多 go 库都为类型切片创建类型别名,例如
type Tokens = []Token
考虑到这一点,我会说 UserIDs
是正确的命名约定
名称应该描述变量的内容。你的字段内容是多个用户ID,所以命名为UserIDs
。 UserID
描述单个用户 ID。
使用复数形式还可以方便地遍历切片并为循环变量使用单数形式,例如:
for _, userID := range result.UserIDs {
// Do something with it
}
视情况而定。
如果[]int
表示单个用户ID,由多个int
组成,则UserID
是正确的名称。
如果[]int
表示多个用户ID,每个用户ID由一个int
表示,那么UserIDs
是正确的名称。
这里没有特殊的逻辑。这里没有与 Go 相关的内容。这只是英语。
对于一片 int ID,变量或结构字段的名称应该是什么?
例如,具有 []int 类型用户 ID 列表的结构:
type Result struct {
UserIDs []int
}
或没有尾随 s:
type Result struct {
UserID []int
}
很多 go 库都为类型切片创建类型别名,例如
type Tokens = []Token
考虑到这一点,我会说 UserIDs
是正确的命名约定
名称应该描述变量的内容。你的字段内容是多个用户ID,所以命名为UserIDs
。 UserID
描述单个用户 ID。
使用复数形式还可以方便地遍历切片并为循环变量使用单数形式,例如:
for _, userID := range result.UserIDs {
// Do something with it
}
视情况而定。
如果[]int
表示单个用户ID,由多个int
组成,则UserID
是正确的名称。
如果[]int
表示多个用户ID,每个用户ID由一个int
表示,那么UserIDs
是正确的名称。
这里没有特殊的逻辑。这里没有与 Go 相关的内容。这只是英语。