phpStorm安装SonarLint插件,进行代码质量检测

4,805 阅读2分钟

简介

代码质量看似一个比较玄学的概念,其实我们也可以进行量化。SonarLint就是这样一款开源的代码质量检测插件,支持许多主流的编程语言,比如Java、Python、Kotlin、PHP等。
SonarLint官网的描述是:SonarLint是一个IDE扩展,可以帮助您在编写代码时检测和修复质量问题,就像拼写检查器一样,它便会指出错误,以便在您提交代码之前修复它们。 虽然官网里支持的IDE没有phpStorm,但是毕竟phpStorm与IDEA是一家公司的,界面与操作基本一脉相承,phpStorm能安装也就不足为其了。

安装

File -> Setting ->

Plugins -> Browse repositories
搜索SonarLint -> Install(因为我已安装所以是Update) -> 重启

配置

如果想关闭自动检查,取消勾选即可

如果在使用的过程中感觉有些点检查得过于严格或者一些点没有检查到,可以这里选择进行检查的点
最后别忘Apply!!

使用

打开文件后,点击最底下工具栏里的SonarLint,即可展示报错,还可以点击绿色三角重新进行检测

还可以以文件夹为单位进行检测
双击后即可到达问题区域
不合适的写法与如何修改

其他

有个报错很重要,它还牵扯了一个很有意思的概念,就是Cognitive Complexity,直译过来叫认知复杂度。可以点击蓝色文字跳转到详细介绍,链接。概括起来就是一个函数的复杂程度,越高越难理解。

想象一下,一个函数里有好几个循环嵌套,循环里还有一些if/ else语句,虽然你写代码的时候对这个函数感觉没什么,但当其他人阅读你的代码的时候,这个函数就非常难以理解,对后续的调试与修改造成了极大的不方便。认知复杂度对难以理解这个概念进行了量化,一个if/else或循环语句则加一,循环语句里有if/else则加二,一个函数的认知复杂度不能超过15。解决这个问题最常见的方法,就是将循环里的代码按照功能拆分成一个或多个函数,也就是我们常说的函数的代码越短小功能越聚焦越好。

碎碎念

如何写出好的代码,强烈推荐《Clean Code》也就是《代码整洁之道》,我也在学习中。