阅读《码出高效:Java开发手册》关于代码风格小结

版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/qq_34160679/article/details/86103032

代码风格


命名规范

  • 命名符合本语言特性

  • 命名体现代码元素特征

    仅从名字上即可知道代码元素的属性是什么,有利于快速理清代码脉络。主要分为首字母大写的大驼峰和首字母小写的小驼峰。类名采用大驼峰形式,一般为名词。方法名采用小驼峰,一般为动词。变量名包括参数,成员变量,局部变量使用小驼峰·。常量字母全部大写。单词之间用下划线连接。

    包名统一使用小写,点分割符之间有且仅有一个自然语义的英语单词,包名统一使用单数形式,但是类名如果有复数含义,则可以使用复数形式。

    抽象类命名使用Abstract 或Base 开头。异常类命名使用Exception 结尾,测试类命令以它要测试的类名开始,以Test 结尾。

    类型与中括号紧挨相连来定义数组。

    枚举类名带上Enum 后缀,枚举成员名称需要全大写,单词间用下划线隔开。

  • 命名最好望文知意

代码展示风格

缩进、空格与空行

缩进: 建议4个space 不要使用tab
空格
  • 任何二目、三目运算符的左右两边都必须加一个空格
  • 注释的双斜线与注释内容之间有且仅有一个空格
  • 方法参数在定义和传入时,多个参数逗号后边必须加空格
  • 没有必要增加若干空格使变量的赋值等号与上一行对应位置的等号对齐。
  • 如果是大括号内为空,则简洁地写出{} 大括号中间无序换行和空格
  • 左右小括号与括号内部的相邻字符之间不要出现空格
  • 左大括号钱需要加空格
空行

空行用来分割功能相似,逻辑内聚、意思相近的代码片段使得程序布局更加清晰、在浏览代码时,空行可以起到自然停顿的作用,提升阅读代码的体验。在方法定义之后、属性定义域方法之间、不同逻辑、不同语义、不同业务的代码之间都㤇通过空行来分割。

换行与高度
换行

代码中需要限定每行的字符个数,以便适配显示器的宽度,以及方便CodeReview 时进行diff 比对。对于无节制的行数字符,需要不断地拉取左右滚动条,是不好的。所以约定单行字符数不超过120字符超过则需要换行。

  • 第二行 相对第一行 缩进4个空格,从第三行开始,不再需要继续缩进
  • 运算符与下文一起换行
  • 方法调用的点符号与下文一起换行
  • 方法调用中的多个采纳数需要换行时,在逗号后换行
  • 在括号前不要换行。
方法行数限制

方法是执行单元,也是阅读代码逻辑的最高粒度模块。庞大的方法容易引起阅读疲劳,让人抓不到重点。代码逻辑要分主次,个性和共性、不要把不同层次的逻辑卸载一个大方法体里,应该将次要逻辑抽取为独立方法,将共性逻辑抽取成为共性方法,便于复用和维护,使得主干代码逻辑更加清晰。

约定单个方法的总行数不超过80行。除注释之外,方法签名、左右大括号、方法内代码、空行、回车及任何不可见字符的总行数不超过80行。

控制语句
  • 在if、else、for、while、do-while等语句中必须使用大括号
  • 在条件表达式中不允许有赋值操作,也不允许在判断表达式出现复杂的逻辑组合。
  • 多层嵌套不能超过3层
  • 避免采用取反逻辑运算符。取反逻辑不利于快速理解而且取反逻辑写法必然存在对应的正向逻辑写法。会与判断 大于或小于 冲突

代码注释

  • 必须要有注释
  • 注释必须是精华,少但是能够精确的表达代码逻辑
  • 与时俱进,修改了代码逻辑那么相对应的代码注释也需要修改
注释格式

主要分为两种 Javadoc 与简单注释

Javadoc 规范

/***/ 可以生成JavaAPI文档,为外部用户提供非常有效的文档支持。

枚举的注释是必须的

  • 枚举实在太特殊了,它的代码很稳定。

  • 注释的内容不仅限于解释属性值的含义,还可以包含注意事项,业务逻辑。如果在原有枚举类上新增或修改一个属性值,还需要加上创建和修改时间,让使用者零成本地知道这个枚举类的所有意图

  • 枚举类的删除或者修改都存在很大的风险: 不可直接删除过时的属性,需要标注为过时,同时注释说明过时的逻辑考虑和业务背景

    简单注释

    包含单行注释和多行注释。需要注意的是此类注释不允许卸载代码后方,必须写在代码上方,这是为了避免注释的参差不齐,导致代码办事混乱。双划线注释往往使用在方法内部,此时的注释是提供给程序开发者,维护中和关注方法细节的调用者查看的。

猜你喜欢

转载自blog.csdn.net/qq_34160679/article/details/86103032