Golang 编码约定:何时在代码中换行?

Golang Coding Conventions: When to Break Lines in Code?

关于围棋,我最喜欢的事情之一是 gofmt。我喜欢这样一个事实,即编码风格在很多方面都是标准化的。

然而,有一件事仍然困扰着我:换行符。我发现如果我查看我公司的代码库,在何时断行的问题上没有明显的一致性。

查看 stdlib 中的一些代码,例如 fmt 代码 here,我仍然不确定约定是什么(如果它存在的话) ).

例如,在 fmt_integer 函数 here, there are line breaks after if statement bodies, but on fmt_sbx here 上没有。

golang 中有换行的约定吗?什么是最佳实践?

首先,if块后最多有一个空行(因为go fmt)。

其次,添加或不添加额外的空行不遵循任何硬性规则,代码可读性除外。

Go Code Review Comments”wiki 页面中甚至没有提及它。