go 语言实践:命名规则
文章目录
go 语言命名
go 语言不像java 等传统面向对象语言一样有访问修饰符;
它是从语法层面做了限定:
- 想要对外暴露的名字必须大写字母开头 [类似 public 修饰符]
- 不想对外暴露的名字必须小写字母开头 [对其他包不可见,类似私有变量]
包名称命名规则
取名要有意义,不与标准库冲突;
包名与目录名一致;
包名要使用小写开头的单词;
不混合大小写或者下划线等;
如:
package yijiebuyi
文件命名规则
取名要简短,有意义;
小写单词打头;
多个单词使用下划线分隔;
blog_content.go
结构体命名规则
驼峰命名法.
至于大驼峰还是小驼峰取决于该结构体是否要向外暴露;
大驼峰 - 对外暴露
小驼峰 - 私有不暴露
type BlogContent struct{
Title string
Content string
}
接口命名规则
一: 单个方法的接口命名以er结尾.
如:
type Reader interface {
Read(p []byte) (n int, err error)
}
二: 驼峰命名法.
大驼峰还是小驼峰取决于此接口是否要向外暴露;
大驼峰 - 对外暴露
小驼峰 - 私有不暴露
函数命名规则
驼峰命名法.
大驼峰还是小驼峰取决于此接口是否要向外暴露;
大驼峰 - 对外暴露
小驼峰 - 私有不暴露
func (*fileDao) AddFile(file *model.File) bool {
result := db.NewRecord(*file)
if result {
db.Create(file)
}
return result
}
变量命名规则
量也应该使用驼峰的命名方式, 但注意尽量不与包名一致或者以包名开头
大驼峰还是小驼峰取决于此接口是否要向外暴露;
大驼峰 - 对外暴露
小驼峰 - 私有不暴露
常量命名规则
常量均需使用全部大写字母组成,并使用下划线分词
const Blog_URL = "https://yijiebuyi.com"
出自:go 语言实践:命名规则