代码格式化

每个人都有自己喜欢的代码样式。但是根据我们的经验,下面这些做法可以提高团队的开发效率:

  • 团队使用单一,共享的代码样式。

  • 通过自动格式化代码来保证统一的代码样式。

如果没有统一的代码样式,当进行代码审查的时候,可能会为了一些样式的问题而进行争论,从而浪费时间。代码审查最好把时间花在代码的行为上,而不是代码的样式上。

在 Android Studio / IntelliJ 中自动格式化代码

在 Android Studio / IntelliJ 中安装 Dart 插件(见章节 编辑工具设定)来进行代码的自动格式化。

格式化当前窗口中代码的方法是先在代码窗口中单击右键,然后选择 Reformat Code with dartfmt 选项即可。也可以在 IntelliJ 的偏好设置里的 Keymap 部分中增加快捷键,然后使用快捷键操作。

在 VS Code 中自动格式化代码

在 VS Code 中安装 Flutter 扩展(见章节 编辑工具设定)来进行代码的自动格式化。

格式化当前窗口中代码的方法是先在代码窗口中单击右键,然后选择 Format Document 选项即可。也可以在 VS Code 的偏好设置里面增加快捷键,然后使用快捷键操作。

editor.formatOnSave 设置成 true,可以在保存文件的时候自动进行代码格式化。

使用 ‘flutter’ 命令自动格式化代码

我们也可以在命令行界面(CLI)中使用 flutter format 命令,进行代码的自动格式化。

  1. $ flutter format path1 path2 ...

末尾处添加逗号

Flutter 代码经常会构建一定深度的树形数据结构,如在 build 方法中。为了有更好的自动格式化效果,我们推荐在末尾处添加逗号,尽管也可以不这样做。规则也比较简单:总是在函数、普通方法、构造方法参数列表的末尾处添加逗号。这样做会使格式化工具自动插入一些换行符,使代码更具有 Flutter 风格。

自动格式化的时候,末尾处 加入 逗号的例子:

末尾处有逗号进行代码自动格式化的情况(Automatically formatted code with trailing commas)

同样的代码在进行自动格式化的时候,末尾处没有逗号的例子:

末尾处没有逗号进行代码自动格式化的情况(Automatically formatted code without trailing commas)