前言
好久没有写博客了,前不久的杭州云栖大会上,阿里巴巴正式发布了由阿里巴巴 P3C 项目组,经过 247 天的持续研发,正式发布众所期待的 《阿里巴巴 Java 开发规约》的扫描插件!
热爱军事的朋友应该都知道,P3C 是世界知名的反潜巡逻机,专门对付潜艇,寓意是扫描出所有潜在的代码隐患。这个项目组是阿里巴巴开发爱好者自发组织的虚拟项目组,把《阿里巴巴 Java 开发规约》强制条目转化自动插件,并实现部分的自动编码。
插件的主要功能
阿里技术公众号于今年的2月9日首次公布《阿里巴巴Java开发规约》,瞬间引起全民代码规范的热潮,上月底又发布了PDF的终极版,大家都期待配套的静态扫描工具开放出来。为了让开发者更加方便、快速将规范推动并实行起来,阿里巴巴基于手册内容,研发了一套自动化的IDE检测插件。于是在今年的云栖大会上,发布了阿里人经过247天持续研发的阿里巴巴JAVA规约扫描插件——Alibaba Java Coding Guidelines.
该插件就是《阿里巴巴Java开发规约》的扩展。为了方便开发者,该插件作为一个IDE的插件形式,支持 IDEA 和Eclipse,当然也支持Android Studio( Android Studio是基于IDEA的)。
该插件在扫描代码后,将不符合规约的代码按Blocker/Critical/Major三个等级显示在下方,甚至在IDEA和Android Studio上,我们还基于Inspection机制提供了实时检测功能,编写代码的同时也能快速发现问题所在。对于历史代码,部分规则实现了批量一键修复的功能,还有对于提交SVN的代码该插件也支持扫描。如此爽心悦目的功能是不是很值得拥有?提升代码质量,提高团队研发效能。
插件的安装
Setting=》Plugin=》Browse repositories,搜索Alibaba就可以了,选择Alibaba Java Coding Guidelines,安装并重启。
插件的使用
1、静态扫描分析JAVA代码
插件的使用非常简单,装好重启之后你会发现,顶部工具栏多了两个按钮,在某个文件中右键也会多两个选项。
选择编码规约扫描,就会扫描当前文件,扫描结果如下显示:将不符合规约的代码按Blocker/Critical/Major三个等级显示在下方,并提示不符合什么规约。
2、Inspections 支持
Inspections 大家应该都比较熟悉,它会自动在我们编码的阶段,进行快速灵活的静态代码的扫描分析,自动检测编译器和运行时错误,并提示开发人员再编译之前就进行有效的改正和改进。
如下所示,如果没有及时清除注释掉的无用代码会提示。
这些所有的规约在Setting=》Editor=》Inspections 中查到(如图)。如果不需要检测这类归于去掉勾选即可。
3、切换语言
Alibaba Java Coding Guidelines 支持切换语言,Tools=》阿里编码规约,切换完重启Android Studio即可。
4、VCS的扫描支持
Android Stuido 中,默认提供 VCS 支持,我们只需要简单的配置,就可以支持 Git、SVN 等。例如我们提交代码时只需选择右边的Alibaba Code Guidelines即可。
5、部分规约的批量修复
前面说了该插件支持部分规约的批量修复功能,具体如何使用如下所示:如果if没有加大括号,会提示:为语句加上大括号
小结
到此为止Alibaba Java Coding Guidelines插件的主要情况讲解完了,该插件主要是《阿里巴巴Java开发规约》的扩展,可以抽空看看。关于一些具体的细节可以去Github:https://github.com/alibaba/p3c。