java中方法命名规范 pmd中9个规则详解?

[更新]
·
·
分类:互联网
3412 阅读

java中方法命名规范

pmd中9个规则详解?

pmd中9个规则详解?

基本(rulesets/basic.xml)—— 规则的一个基本合集,可能大多数开发人员都不认同它: catch 块不该为空,无论何时重写 equals(),都要重写 hashCode(),等等。
命名(rulesets/naming.xml)—— 对标准 Java 命令规范的测试:变量名称不应太短;方法名称不应过长;类名称应当以小写字母开头;方法和字段名应当以小写字母开头,等等。
未使用的代码(rulesets/unusedcode.xml)—— 查找从未使用的私有字段和本地变量、执行不到的语句、从未调用的私有方法,等等。
设计(rulesets/design.xml)—— 检查各种设计良好的原则,例如: switch 语句应当有 default 块,应当避免深度嵌套的 if 块,不应当给参数重新赋值,不应该对 double 值进行相等比较。
导入语句(rulesets/imports.xml)—— 检查 import 语句的问题,比如同一个类被导入两次或者被导入 的类中。
JUnit 测试(rulesets/junit.xml)—— 查找测试用例和测试方法的特定问题,例如方法名称的正确拼写,以及 suite() 方法是不是 static 和 public。
字符串(rulesets/string.xml)—— 找出处理字符串时遇到的常见问题,例如重复的字符串标量,调用 String 构造函数,对 String 变量调用 toString() 方法。
括号(rulesets/braces.xml)—— 检查 for、 if、 while 和 else 语句是否使用了括号。 代码尺寸(rulesets/codesize.xml)—— 测试过长的方法、有太多方法的类以及重构方面的类似问题。
J avabean(rulesets/javabeans.xml)—— 查看 JavaBean 组件是否违反 JavaBean 编码规范,比如没有序列化的 bean 类。 终结函数(finalizer)—— 因为在 Java 语言中, finalize() 方法不是那么普遍,所以它们的使用规则虽然很详细,但是人们对它们相对不是很熟悉。这类检查查找 finalize() 方法的各种问题,例如空的终结函数,调用其他方法的 finalize() 方法,对 finalize() 的显式调用

如何写出优雅的Java代码?

作为一个混迹于职场多年的码农,我觉得可以来回答一下这个问题。
首先,编写出的代码要符合Java语言的规范,比如,类名要大写,变量命名使用驼峰命名规则呀,变量名要见名知意,良好的代码格式等等。另外应该要有合理的注释,一份好的代码,应该给人以赏心悦目的感觉,而不是看到是一坨乱糟糟的东西,看着就没有阅读下去的欲望了。请看下面几个反面教材吧:
下面,我就通过代码分享一下两个特别简单的小例子,来简要说明一下怎么写比较优雅,第一小例子:
如果我们改成下面的是不是会更好呢?
请看另外一个例子:
如果进行下面的修改会不会更优雅点呢?
这只是两个简单的小例子,通过这个是想说明,我们平时在写代码的时候一定要写的简洁,一目了然了。当然这个只是最最基本的一些东西。
最后说一下,那种真正意义的优雅代码。平时,我们在开发中一定要注意那种整段整段重复的代码,一定要将其封装起来,一定要多注意抽象出公共的东西。好的代码,应该是易于维护和扩展的,我们在写代码时,一定要考虑都以后的扩展问题,要能够便于以后的扩展。应该注意设计模式的运用。程序设计的一个原则就是对扩展开放,对修改闭合的。
另外,平时没事的时候,应该多看看优秀框架的源码,像jdk源码,Spring的源码,都是非常优雅的代码,看看别人是怎么设计的,怎么写的。这样自己才会有所提升,才能够写出优雅的代码。
最后,本回答仅代表个人观点,如果回答的不对或者大家有不同的意见,更好的答案,希望大家在下面留言评论。如果你对技术充满激情,热爱分享欢迎关注头条号:It界里一枚小学生,谢谢大家。