Go包名应简洁、小写、单数,与目录名一致,避免下划线或驼峰命名;2. 使用清晰功能命名如log、db而非utils等泛化词;3. 导出标识符无需重复包名,利用上下文提升可读性。
Go语言的包命名规范强调简洁、清晰和一致性,目的是让代码更易读、易维护。以下是Go社区广泛遵循的包命名规范。
使用简短且小写的包名
Go包名应全部使用小写字母,尽量简短并避免下划线或驼峰命名。
推荐:
net
、
http
、
json
不推荐:
MyPackage
或
my_package
短名字便于导入后使用,例如
import "fmt"
而不是冗长的名称。
包名应与目录名一致
包名通常与所在目录的名称相同,这样能减少混淆。
立即学习
“
go语言免费学习笔记(深入)
”;
例如,如果目录路径是
github.com/user/project/utils
,那么该目录下的源文件应以
package utils
开头。
这有助于工具链和开发者快速识别包的作用范围。
避免使用复数形式和通用词
包名应为单数,避免如
utils
、
helpers
这类泛化名称,除非确实无法更好归类。
php版微信js-sdk支付接口类
php版微信js-sdk支付接口类
下载
更好的做法是根据功能命名,比如:
log
而不是
logging
db
而不是
databases
清晰的名字能让其他开发者一眼明白用途。
导出标识符依赖包名上下文
Go中大写字母开头的标识符会被导出,因此包名本身会影响API的可读性。
例如,在名为
crypto
的包中,
AES
比
CryptoAES
更合适,因为调用时写作
crypto.AES
已足够清晰。
避免在包内重复包名,如不要写成:
基本上就这些。遵循这些规范能让Go项目结构更清晰,团队协作更顺畅。
package auth
var AuthToken string // 冗余,应简化为 Token
