最速提升Java编码技能

提升编码技能最快速的方式莫过于有一位老司机在旁边手把手指导(即时反馈),但是这并不现实!不过可以使用一些辅助工具,时刻帮助我们发现编码中可能存在的问题!

Intellij IDEA

IDEA是最重要、最有效的工具,可以编码的时候实时检测代码,并给出改进意见。比如如下代码:

import java.util.ArrayList;
import java.util.List;

/**
 * Hello world!
 *
 * @author tenmao
 */
public class App {
    public static void main(String[] args) {
        List data = new ArrayList();
        for (int i = 0; i < data.size(); i++) {
            System.out.println(data.get(i));
        }
    }
}

IDEA可以给出两处改进意见,一处是new ArrayList()中Integer可以去掉,另外一处是for循环,建议使用foreach替换。

IDEA的代码改进提示

IDEA自带检查功能

  • 重复代码
  • 更优秀/简洁的表达(如lambda, 方法引用,流式方法等)
  • 命名错误
  • 还有太多了(就不列举了),如下图


    IDEA支持的检查

主动检测

菜单Analyze -> Inspect Code,可以主动要求IDEA检测所有代码。这样就不用逐个文件的检查了。

例外

有时候项目或者公司习惯,一些IDEA的检查项是允许的(甚至是要求的),比如常见的DAO, DTO命名就不符合IDEA的命名规范(驼峰式),也可以在IDEA的弹出提示中(ALT + ENTER),禁止某一个检查项

Findbugs

Findbugs是最经典的代码检查工具,可以帮助发现很多常见错误。比如资源没有释放、空指针、字符编码等问题。 Findbugs有一个小毛病,就是无法实时检查,而是需要手工触发。

Findbugs检测结果

Alibaba Java Coding Guidelines

阿里出品的代码风格及最佳实践的插件,推荐安装,效果如下图


image.png

总结

利用上面的工具,可以帮助Coder更快地掌握良好的编码习惯和技巧,几乎避免了所有低级的错误。(十毛编码超过5年了,还是非常有帮助)。
PS:另外很多大公司内部,也都会有一些内部的代码检查工具和服务,也尽可能的使用起来,以成本最低、效率最高的方式提升自己。

你可能感兴趣的:(最速提升Java编码技能)