- 源文件的行数:尽量不超过500行,但是也不是一个硬性规定,尽量短。
- 源文件自上而下,应该具有由高到低的抽象层次变化过程。概括性的内容在最上面展示,细节在下方铺开。
- 垂直方向上的间隔
- 封包声明、导包声明以及各个函数之间,都应该用空行来隔开;类的变量声明区与方法声明区之间,也应该用空行分割。
- 关系紧密的代码应该在垂直方向上靠近,例如,存在逻辑关系的成员变量的声明,最好不要用注释或者空行来分割
- 变量和函数声明的位置
- 局部变量:在短函数中,变量应在最前面声明;在长函数中,也可以在某个代码块的顶部、或者if/for/while的上边声明,必要时以空行分割来表示逻辑上的分隔关系。
- 类的成员变量:应该在类的最顶部声明。
- 对于有相关关系的函数(例如A调用B),应该垂直相邻,先声明调用方,再声明被调用方。
- 概念相关、相近的变量或者函数,应该相邻声明。
- 横向上,一行代码不宜过长,长度不建议超过120个字符。
- 水平方向上的间隔
- 函数名和左括号之间不加空格
- 低优先级的运算符左右加空格,表示对两个运算元素和运算符的强调
- 高优先级的运算符左右可以不加空格
- 类的成员变量不宜过多,否则应该考虑进一步抽象,构造更细粒度的类