码出高效 Java 开发手册之代码风格篇

前言:

在团队开发过程中,每个人的代码风格都不一样, 有的人不爱写注释,有的人写注释, 有的人方法与方法之间不爱空一行,非要挤在一起,有的人就写的很规范,像这种千奇百怪的风格会造成什么影响呢? 比如线上有一个紧急bug , 同事去解决这个bug 的时候,他是不是要先看一下你这个代码是怎么样的一个逻辑,其次才能去解决这个问题,当你的代码写的很乱的时候,就会让人这写的像一tuoshi  。

因此团队之间拥有一个比较统一的代码风格很重要,方便维护和提高效率,规范的代码风格总是让人赏析悦目的。

其实小编很早之前就入了这本码出高效Java开发手册,这本书我大概的浏览了一下,书中的内容算是比较生动的,没那么刻板,建议喜欢看书的小伙伴入手一本。

小建议:不管在代码中起什么名字,都切忌中式拼音,如果英语不太好的小伙伴可以下载一个有道词典,因为不管是定义什么类,变量也好,他们的名字都是跟功能相关的。

  • 1.类名采用大驼峰形式,首字母大写。 

 eg:  TestController  StringBuffer

  • 2.变量(参数,成员变量 局部变量),方法名 采用小驼峰形式。  【首字母小写】

eg : sumNumber

  • 3.常量的命名全部大写,多个单词之间用下划线隔开。

常量:

       一般用于描述一个不可变的值,分为全局变量,局部变量,类内变量。  全局变量用public static final 修饰, 类内变量         一般用 private static final 修饰。局部变量分为方法常量和参数常量。

  举例:

    public final static String SEND_MESSAGE = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={access_token}";
  • 4. 不要到处使用“魔法值”

  举例:

方法:1.可以使用Enum枚举类  2,定义一个常量类,在具体的方法,类中调用这些常量。

          在早期的时候我们还可以记得这些魔法值的意义,但是当时间一久,原先的开发人员离职了,你去维护这段代码,你会觉得很痛苦的,相信我。哈哈!

  • 5.代码的缩进,空格 与空行。
  1.     推荐四个空格缩进 ,我一般在idea 上开发的时候,写完代码一般用 ctrl+alt +l  调整一下格式
  2.    定义变量的时候左右要有空格   int i = 100;
  3.    if () {} else {}  括号前后要留有空格,很多地方都要留有空格,我就不一一列举了。
  4.   多个方法,属性可以留有空行,不要挤在一起,举个例子:在定义接口的类里面,其实方法并不是不很多,没必要觉    得多空那么一行会占空间,不空行才会碍眼呢!
  5.   方法行数不应该超过80行,一个个长长的方法一点都不方便整理逻辑,如果你的代码行数超过了80行,要有优化的      空间喔。
  •  6.代码注释

  代码注释非常重要,讲究不宜过多,要写的精简。  修改代码逻辑的时候要同步修改注释,以免造成误会。

  • 7.注释的格式

 提倡使用/** */格式,且这种格式能在idea中配置模板。,非常方便。

第二部分

那么在日常开发过程中我们应该如何提高代码的质量呢,介绍俩个插件。

(1) Alibaba  Java Coding Guidelines

 [直接 File  Setting  Plugins------>install]   我这里已经安装拉,小编用这个插件差不多一年多,自认为它的大多数提示还是不错的,比如说行数不超过80行,又或者方法没有注释,还有一些注释的代码如果没有及时删除的话,它会提示波浪线,对于强迫症的小伙伴还是挺难受的,项目里面出现大段的重复代码也是波浪线标注出来。

(2)SonarLint 插件   

原文:https://blog.csdn.net/qing_gee/article/details/103831517

讲真第二个插件我用的不久,这俩天看王二 博主 的文章被吸引到的,这个也是一款提升代码质量的插件。

SonarLint 是一个 IDE 插件,可以帮助你在编写代码时检测到问题,并进行修复。就像拼写检查器一样实时,SonarLint 可以方便你在提交代码之前就对其进行修复。 

俩者可以配合使用,阿里巴巴的那个插件可以提高代码质量 ,后面那个可以帮助更好的提高代码的健壮性。 

发布了54 篇原创文章 · 获赞 49 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/tangthh123/article/details/104646636