Go高质量编程-编码规范|青训营笔记

67 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 4 天.这篇文章主要是对Go语言高质量编程与性能调优实战这门课所做的笔记。

Go编码规范

代码格式

gofmt是Go 语言官方提供的工具,其能自动格式化 Go 语言代码为官方统一风格,在Goland等IDE都引用了gofmt配置,我们在编译项目时可以很方便地使用。

注释

解释代码作用

适合注释说明对外提供的公共函数等,除非其作用十分简单明显,否则对其的注释是很有必要的。

解释代码是如何做的

在代码中往往会存在一些复杂的,逻辑不明显的代码片段,最好对其的实现逻辑、实现过程进行讲解注释方便他人理解。

解释代码实现的原因

某些代码的逻辑脱离了上下文就很难读懂,因此应该对这类的代码解释其存在的外部因素,最好能将上下文串通解释。

解释代码什么情况下会出错

例如对于某些函数,应该列出一些可能会导致的函数操作出错的原因,例如传入参数类型的限制、大小长度的限制等。

命名规范

变量

1、尽可能的简介。

2、缩略词全大写,但当其位于变量开头且不需要导出时,使用全小写:例如使用 ServeHTTP 而不是 ServeHttp、使用 XMLHTTPRequest 或者 xmlHTTPRequest。

3、变量距离其被使用的地方越远,则需要携带越多的上下文信息。

函数

1、包名和函数名总是成对出现的。

2、函数名不需要携带包名的上下文信息。

3、当名为 foo 的包某个函数返回类型 Foo 时,可以省略类型信息。

4、当名为 foo 的包某个函数返回不是Foo的类型时,可以在函数名中加入类型信息作为注释。

1、只由小写字母组成。

2、尽可能简短并包含一定的上下文信息。

3、不得与标准库同名。

4、不使用常用变量名作为包名。

5、使用单数而不是复数。

6、谨慎地使用缩写。