代码风格
缩进和对齐
FMT.01 推荐使用空格进行缩进和对齐,而不是制表符(Tab),每一层级的缩进使用 4 个空格。禁止混合使用空格和 Tab。
空格还是 Tab?
Tab 的优点:
- 使用 Tab 可以拥有更少的敲击次数;
- 使用 Tab 的源程序有更小的空间占用;
- 使用 Tab 可以根据自己的喜好调整显示的宽度;
- 使用 Tab 可以对整块代码进行缩进和对齐;
从上述第 3 点可以看出,制表符在不同的编辑器中的显示是不一样的,这正是我们禁止混合使用空格和 Tab 的原因。
尽管 Tab 拥有诸多的优点,但是在使用时也需要注意一些问题,比如:
Tab 仅能做好缩进,对于代码块和注释等的对齐,很多时候还是要使用空格配合使用;如果你使用 Tab,请仅在行首使用它。
那么空格的优点呢?
同一份源代码在不同的编辑器下查看的效果都是一致的。
对于不同的语言有其不同的流行风格,比如 js 等前端开发,经常有很深的嵌套,缩进的占位就比较耗费资源,2 个空格在使用中也比较常见;Go 语言使用 gofmt 默认将代码格式化为按照 Tab 缩进;Python 和 C 的大多数开发者们更加偏爱 4 个空格。
现代的编辑器大都支持设置将 Tab 转换为空格,除了不能减少多余空格带来的硬盘空间占用外,在使用体验上和原生的 Tab 并没有什么区别。