值得拥有的Java编程规范

一 命名与注释

1.1 命名

  • 命名的关键是能准确的表达意思。在足够表达其含义的情况下,命名当然是越短越好。
  • 方法内部的临时变量推荐短命名,类名建议长命名,大家耳熟能详的,命名用缩写。
  • 命名要可读、可搜索,命名过程符合项目的统一规范,最好能做到见名知意。
  • 接口命名方式一:接口加前缀“I”,比如 IUserService,对应的实现类命名为 UserService。
  • 接口命名方式二:不加前缀,比如 UserService,对应的实现类加后缀“Impl”,比如 UserServiceImpl。
  • 抽象类命名也有两种方式,一种是带上前缀“Abstract”,另一种是不带前缀“Abstract”,推荐带有前缀“Abstract”。

1.2 注释

  • 注释的目的就是让代码更容易看懂,只要符合这个要求,你就可以写。
  • 注释最好说明:做什么、为什么、怎么做。
  • 对于一些复杂的类和接口,我们可能还需要写明“如何用”。
  • 类和函数一定要写注释,尽可能详细些,函数内部的注释可以少写注释。
  • 注释本身有一定的维护成本,一般都是靠好的命名和提炼函数、解释性变量、总结性注释来做到代码易读。

二 代码风格

  • 函数的代码行数不要超过一屏幕的大小,比如 50 行。
  • 一行代码最好不要超过 IDE 显示的宽度,尽量让代码保持一行,拆成两行影响阅读。
  • 善用空行来分割代码块,使得不同模块的代码之间的界限更加清晰、明确。
  • 为了代码层次清晰、代码优雅,推荐使用两格缩进代码。
  • 大括号可以另起一行或者跟上一条语句同一行。习惯跟上一条语句同一行。
  • Google Java 编程规范中,依赖类按照字母序从小到大排列。类中先写成员变量后写函数。
  • 成员变量之间或函数之间,先写静态成员变量或函数,后写普通变量或函数,并且按照作用域大小依次排列。

三 编程技巧

  • 要有模块化和抽象思维,善于将大块的复杂逻辑提炼成类或者函数。
  • 如果函数参数过多,按照职责单一原则拆分成多个函数。
  • 如果函数参数过多,且无法拆分成多个函数,将参数封装为对象。
  • 函数不要使用参数来控制代码逻辑,可以按照职责单一原则和接口隔离原则拆分成多个函数。
  • 通过去掉多余的 if 或 else 语句,将部分嵌套逻辑抽象成函数,减少嵌套层次。
  • 使用 continue、break、return 关键字提前退出嵌套,调整执行顺序来减少嵌套。
  • 用字面常量取代魔法数;利用解释性变量来解释复杂表达式。

猜你喜欢

转载自blog.csdn.net/jack1liu/article/details/108293542