Golang的命名规范及最佳实践(推荐!)
目录
前言
Golang是一门区分大小写的语言。
命名规则涉及到:变量,常量,全局函数,结构,接口,方法。
一、大小写规范
二、包的命名规范
示例:
package dao
package service
三、文件的命名规范
示例:
customer_dao.go
四、结构体的命名规范
示例:
type CustomerOrder struct {
Name string
Address string
}
order := CustomerOrder{"Tom", "北京市海淀区"}
五、接口/函数的命名规范
示例:
type Reader interface {
Read(p []byte) (n int, err error)
}
六、变量的命名规范
示例:
var isExit bool
var hasConflict bool
var canManage bool
var allowGitHook bool
七、常量的命名规范
示例:
type Scheme string //为枚举类型常量创建相应类型
const {
HTTP Scheme = "http"
HTTPS Scheme = "https"
}
八、错误处理的命名规范
错误处理的原则:
不能丢弃任何有返回err的调用,不使用_丢弃,必须全部处理。
接收到错误时,要么返回err,或者使用log记录下来,尽早return。
一旦有错误发生,马上返回,尽量不使用panic,除非知道错误处理时应该做什么。
如果用英文进行错误描述,必须为小写,不需要使用标点结尾,采用独立的错误流进行处理。
示例:
// 正确写法
// 若产生错误
if err != nil {
// 进行错误处理
return //或者continue
}
// 若没产生错误,则进入正常代码
// 错误写法
if err != nil {
// 进行错误处理
return //或者continue
} else {
// 正常代码
}
九、单元测试的命名规范
十、系统的预定义标识符
除了保留关键字之外,Golang语言系统还提供了36个预定义标识符,包括基础数据类型和系统内嵌函数(不需要引入包,可以直接使用的函数)。
预定义标识符预定义标识符预定义标识符预定义标识符预定义标识符预定义标识符appendboolbytecapclosecomplexcomplex64complex128uint16copyfalsefloat32float64imagintint8int16uint32int32int64itoalenmakenewnilpanicuint64printprintlnrealrecoverstringtrueuintuint8uintprt
总结
到此这篇关于Golang的命名规范及最佳实践的文章就介绍到这了,更多相关Golang命名规范内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章: