高效稳定 · 简洁易用 · 灵活扩展

项目地址:lemon-echo微服务架构

1、if else语句不超过三层,代码嵌套层次达3层以上时,一般人理解起来都会困难,尽量避免用到else,可以使用if(xx) return替代。

2、每个if while for等语句,都不要省略大括号{}。

3、公用逻辑抽取成公用方法,并加以注释说明。

4、在实体字段、类、方法使用Java Doc注释方式 /** **/,方法注释时除非特殊说明不强制要求对方法每个参数进行注释,注释宜少而精,不宜多而滥,更不能误导。

5、在代码中加入 //TODO: ,IDE会提示让你知道你还有什么事没有做,如已经处理过的重写方法需要将自动生成的TODO注释删除。

6、如果某个方法是故意留空不写,需要注释说明

1
2
3
if (!exists(order)) {
//nothing to do
}

7、变量的声明,初始化和被使用尽量放到一起。

8、能用局部变量的,不要使用实例变量,能用实例变量的,不要使用类变量。变量的生存期越短,以为着它被误用的机会越小,同一时刻要关注的变量的状态越少。

9、尽量不要用参数来带回方法运算结果,而是使用return返回。

10、尽量使用HashMap、ArrayList、StringBuilder,除非线程安全需要,否则不推荐使用Hashtable、Vector、StringBuffer,后三者由于使用同步机制而导致了性能开销。

11、字符串变量和字符串常量equals的时候将字符串常量写在前面 “abc”.equals(obj),这么做可以避免空指针异常。

12、把一个基本数据类型转为字符串,基本数据类型.toString()是最快的方式、String.valueOf(数据)次之、数据+””最慢。

13、尽量不捕获Java类库中定义的继承自RuntimeException的运行时异常类,而是使用全局处理方法统一记录日志并处理。

14、打印日志时候,使用log而不是System.out.println(),注意日志级别 info/warn/error。

15、不要想着等完成了功能,再来优化代码的格式和结构,等真的把功能完成,很少有人会再愿意回头调整代码。