Go语言开发实践规范汇总
统一规范篇 合理规划目录 本篇主要描述了公司内部同事都必须遵守的一些开发规矩,如统一开发空间,既使用统一的开发工具来保证代码最后的格式的统一,开发中对文件和代码长度的控制,必须经过go语言自带的检测机制等。 【原则1.1】合理规划目录,一个目录中只包含一个包(实现一个模块的功能),如果模块功能复杂考虑拆分子模块,或者拆分目录。 GOPATH设置 【建议1.2】使用单一的 GOPATH import 规范 【规则1.3.1】在非测试文件(*_test.go)中,禁止使用 . 来简化导入包的对象调用。 【规则1.3.2】禁止使用相对路径导入(./subpackage),所有导入路径必须符合 go get 标准。 【建议1.3.3】建议使用goimports工具或者IDE工具来管理多行import 代码风格 【规则1.4.1】提交代码时,必须使用gofmt对代码进行格式化。 【规则1.4.2】提交代码时,必须使用golint对代码进行检查。 【建议1.4.3】提交代码前,必须使用go vet对代码进行检查。 大小约定 【建议1.5.1】单个文件长度不超过500行。 【建议1.5.2】单个函数长度不超过50行。 【规则1.5.3】单个函数圈复杂度最好不要超过10,禁止超过15。 【规则1.5.4】单行语句不能过长,如不能拆分需要分行写。一行最多120个字符。 【建议1.5.5