Go 编码规范指南
1. 前言
规范等级说明
2. 代码格式化
2.1 【必须】使用 gofmt
2.2 【推荐】行长度
2.3 【必须】空格和运算符
3. 导入规范
3.1 【必须】使用 goimports
3.2 【必须】导入分组
3.3 【必须】路径规范
3.4 【推荐】别名使用
4. 错误处理
4.1 【必须】错误处理原则
4.2 【推荐】错误创建
4.3 【必须】panic 和 recover
4.4 【必须】类型断言
5. 命名规范
5.1 【必须】通用命名规则
5.2 【必须】包命名
5.3 【必须】文件命名
5.4 【必须】变量和函数命名
5.5 【必须】常量命名
5.6 【必须】结构体和接口命名
6. 代码结构
6.1 【推荐】控制结构最佳实践
6.2 【推荐】提前返回
7. 函数设计
7.1 【推荐】函数参数
7.2 【必须】资源管理
7.3 【推荐】方法接收器
7.4 【必须】代码度量限制
7.5 【必须】魔法数字
8. 注释规范
8.1 【必须】包注释
8.2 【必须】函数注释
8.3 【必须】类型注释
8.4 【必须】常量和变量注释
9. 测试规范
9.1 【必须】测试文件规范
9.2 【推荐】测试结构
10. 依赖管理
10.1 【必须】使用 Go Modules
10.2 【推荐】版本管理
10.3 【必须】提交规范
11. 项目结构建议
11.1 【推荐】标准项目布局
12. 常用工具
12.1 【推荐】开发工具
12.2 【推荐】编辑器配置
13. 性能建议
13.1 【推荐】避免常见性能陷阱
13.2 【推荐】并发最佳实践
14. 安全建议
14.1 【必须】输入验证
14.2 【必须】敏感信息处理
最后更新于