一、前言
真能闹,怕喇喇蛄,还不种稻子了?
喇喇蛄,是东北的一种害虫,经常在种水稻的季节,在池埂子上盗洞,导致稻田里的水悄悄的流没了,影响稻苗发育。
后来发现原来写代码,也能碰见“蝲蝲蛄”,无论你写的是什么功能、哪种技术、作何目的,蝲蝲蛄总能给盗几个洞出来。“你这已经有其他的某某了你怎么还造轮子”、“你这方案不行程序员不要浪费时间”、“也没看出来你这有啥优势和价值呀怎么给业务赋能”,这种话听上去“贼”有道理,吹的叮当的,但让他去做又能搞的稀的囊的。
所以,远离蝲蝲蛄,做你想做的、搞你想搞的、学你想学的,知识是不断沉淀的积累、方案是积累后的创造。
二、需求目的
怎么办,都有标准的研发规范,但还是没法控制住到具体的每个研发下,给写出什么代码了。
有时候标准只是文档,看和执行的这个过程中就会一定的转行失效性,你可能会想加手段;评审、扣钱、罚绩效、检讨等等,但这样可能还只是增加过程成本,最终效果也不会太好。不太可能一个写代码还得配一个保姆,所以就像 p3c、pmd-idea,这样的插件出来了,帮助程序员把代码写好,治理掉一些不合标准的问题代码。
那么,你好奇这个事是怎么干的吗,怎么你就在 IDEA 写代码,它就能给你检测出来,告诉你有问题,并提醒你修改以及有些还可以一键帮助你修改呢?那如果你想再增加点你们公司个性的要求的时候,怎么扩展呢?本章节我们就使用 IDEA 插件开发能力,把这个事办喽
<extensions defaultExtensionNs="com.intellij">
<localInspection
language="JAVA" groupPath="Java"
groupName="X-PMD" enabledByDefault="true" level="ERROR"
bundle="InspectionBundle" key="replace.pseudorandom.generator.name"
implementationClass="cn.bugstack.guide.idea.plugin.rule.RandomRule"
/>
<localInspection
language="JAVA" groupPath="Java"
groupName="X-PMD" enabledByDefault="true" level="ERROR"
bundle="InspectionBundle" key="fastjson.auto.type.name"
implementationClass="cn.bugstack.guide.idea.plugin.rule.FastJsonRule"
/>
<localInspection
language="JAVA" groupPath="Java"
groupName="X-PMD" enabledByDefault="true" level="WARNING"
bundle="InspectionBundle" key="hardcoded.ip.name"
implementationClass="cn.bugstack.guide.idea.plugin.rule.IPRule"
/>
</extensions>
在 plugin.xml 中配置我们自己开发好的代码静态检测对象,这样你的检测类就生效了。
大型站长资讯类网站! https://www.0739zz.cn