Checkstyle conflicting with Oracle Java Style Guide



我正在学习一门需要使用Checkstyle的课程。我对它似乎正在执行的"惯例"感到困惑。

例如:

/**
 * Something, something.
 *                        <-- NOT ALLOWED
 * @param bla bla bla
 */

根本不允许使用三元运算符,并且每个if语句都需要大括号。

这些"惯例"似乎与Oracle风格的指导方针相冲突:http://www.oracle.com/technetwork/java/codeconv-138413.html

我知道关于样式准则的想法几乎和程序员一样多,但这组规则是从哪里来的,Checkstyle规则有什么特别的优势吗?

您应该与课程协调员核实,以确保您使用的是正确的Checkstyle规则集。如果是,则需要询问他们为什么选择具有这些特定限制的规则集。

但最重要的是,关于Java风格和布局有很多意见,你只需要接受课程强加给你的规则。。。将来,由你的项目经理等等。


我可以看到这些特定示例规则的论据:

  • javadoc中的空行浪费了屏幕空间
  • 三元运算符往往用于使代码可读性较差的地方
  • 始终将"{"}"与if语句和循环体一起使用的规程避免了由于缩进不一致而导致错误模糊的情况。(有了大括号,不一致性就更明显了。)

最新更新