从CheckStyle生成编码指南

Mar*_*ell 6 html java coding-style report checkstyle

有没有办法从现有的CheckStyle配置文件生成"漂亮的"编码约定/指南文档?

此文档必须包含强制执行的规则的说明以及配置值(如最大行长度,违规严重性等).

拥有此类文档的好处是可以更快地提升新团队成员,而无需阅读CheckStyle配置文件.

bar*_*uin 1

我通常建议不要生成编码指南文档的一部分,因为这会导致软件工程师出现验收问题。另外,以我的愚见,Checkstyle 规则不应该成为编码指南文档本身的一部分。相反,编码指南应该声明诸如“注意不要引起 Checkstyle 问题”之类的内容。

Checkstyle 工具可以配置信息以向开发人员显示警告。这样,开发人员就不需要打开外部文档来正确解决 Checkstyle 警告,因为所有必需的信息都已存在。

示例:LocalVariableName检查检查非最终局部变量的命名约定。其默认消息文本是:

Member Names: Name 'Foo' must match pattern '^[a-z][a-zA-Z0-9]{0,31}$'.
Run Code Online (Sandbox Code Playgroud)

如果您像这样配置检查:

<module name="LocalVariableName">
  <message key="name.invalidPattern"
    value="Local variable name ''{0}'' must not be longer than 32 alphanumeric
           characters and start with a lowercase letter. Regex: ''{1}''"/>
</module>
Run Code Online (Sandbox Code Playgroud)

那么输出将是:

Local variable name 'Foo' must not be longer than 32 alphanumeric characters and
start with a lowercase letter. Regex: '^[a-z][a-zA-Z0-9]{0,31}$'
Run Code Online (Sandbox Code Playgroud)

诚然,如果所有开发人员都足够了解他们的正则表达式,则不需要新的消息文本。但并不是每个人都是正则表达式专家,这只是一个示例,可以应用于许多检查,包括不使用正则表达式的检查。