第1课_Go命名规范
热度🔥:12 免费课程
授课语音
Go 命名规范
Go 语言有一套严格的命名规范,旨在提高代码的可读性、可维护性和与其他 Go 项目的一致性。以下是 Go 语言中的命名规范。
1. 包名命名规范
小写字母:包名必须使用小写字母,且不能包含下划线或驼峰命名。
简洁且有意义:包名应简洁且能准确描述该包的功能。
例如:
import "net/http" import "fmt"
避免使用泛泛包名:例如,不要使用
utils
或common
这样的包名。应该尽量使用明确的功能描述。
2. 变量命名规范
简短且具描述性:变量名应该简短、易懂,且具备描述性。避免使用单字母命名,除非是在循环等场景中使用。
例如:
var totalAmount float64 var userAge int
驼峰命名法:Go 采用驼峰命名法(camelCase),变量名应以小写字母开始。
例如:
var userCount int var isValid bool
避免过于简化的变量名:避免使用单一字母作为变量名,除非是
i
、j
等常用于循环的变量。
3. 常量命名规范
大写字母:常量名应使用全大写字母,单词之间使用下划线分隔。
例如:
const MAX_CONNECTIONS = 100 const PI = 3.14
描述性:常量的名称应该具有描述性,能够明确表达常量的含义。
4. 函数命名规范
动词开头:函数名应以动词开头,描述函数的动作或行为。
例如:
func CalculateTotal() float64 func SendMessage()
驼峰命名法:与变量一样,函数名也使用驼峰命名法,首字母小写表示私有,首字母大写表示公有。
5. 方法命名规范
描述性:方法名应简洁且描述性强,避免过于复杂的名称。
例如:
func (u *User) UpdateName(name string) func (a *Account) Withdraw(amount float64)
6. 接口命名规范
以“er”结尾:Go 推荐接口名以表示行为的名词加“er”后缀,例如
Reader
、Writer
。例如:
type Reader interface { Read(p []byte) (n int, err error) } type Writer interface { Write(p []byte) (n int, err error) }
7. 结构体命名规范
首字母大写:结构体类型名称应首字母大写,以便在包外使用。
例如:
type User struct { Name string Email string }
简洁且描述性强:结构体名称应简洁明了,能够准确反映结构体的含义。
8. 包名和文件名的命名规范
包名与文件名一致:包的名称和文件名应一致,包名通常使用小写字母,避免使用下划线或数字。
例如:
// package user // file: user.go
避免使用与 Go 保留关键字冲突的名称:避免使用与 Go 语言保留关键字相同的名称,例如
func
、type
等。