我开始与Sonar一起冒险;)
使用它的默认配置的Sonar在主要级别上设置了PMD UnnecessaryLocalBeforeReturn错误。
List<Todo> filtered = em.createQuery(query).getResultList();
return filtered;
对我来说,我应该在一行中更改上面的代码。
这对我来说真的很有意思,因为我建议我的同事在返回之前将这个“不必要的”本地化。
我觉得它很容易调试。当我在返回线上设置断点时,我确信当我到达那里时,这个值将准备就绪,我不必对我的陈述进行选择或者“逐步表达”。
除此之外,我相信它对减少方法的回报点有积极的影响。
我的问题是:是否存在某种解释/讨论,为什么Checkstyle,PMD,FindBugs等项目的错误被认为是错误?
答案 0 :(得分:0)
如果你的观点只是查看List的内容,你也可以将断点放在方法的调用者中。另一个选择是设置一个断点并评估值(Eclipse&amp; IntelliJ做得很好)。
为什么它被认为是一种不良做法?
您只需在不需要的情况下添加对变量的引用。
这只会增加垃圾收集器的工作量。