带有首字母缩略词的 Java 命名约定

标签 java naming-conventions

以下 Java 类的正确名称是什么: DVDPlayer 还是 DvdPlayer?

最佳答案

因为看起来答案是在 Java 中没有针对此的单一标准,所以我想指出 .NET Framework 设计指南确实指定了这一点。

现在在抨击我跑题之前,请记住 Java 和 .NET Framework 的类命名指南非常相似,这使得 .NET 指南可以作为有说服力的引用。

一般规则

这两个指南都建议仅在首字母缩略词广为人知且易于理解时才使用首字母缩略词。 DVD 或 XML 就是很好的例子,虽然您可以立即识别它们,但识别扩展版本需要更长的时间。

缩写

.NET Framework 指南建议不要使用缩写词(与首字母缩写词相反),除非在标识符中可以使用两个常见的缩写词 IDOK。使用缩写时,始终使用混合大小写的 Id,除了 camelCase 标识符的第一个单词(与 PascalCase 标识符相反)。

在 Java 中,仅在某些时候遵循此约定。 Take a look拼写 getIDgetId 在 JCL 中的混合程度。 (向下滚动该页面的中途)。在 Java 8 version不过,getId 的使用越来越多,这表明 PascalCase 约定现在更受欢迎。最好尽可能避免使用缩写词。

缩写词

.NET 框架指南规定,两个字母的首字母缩写词,如 IO,两个字母的大小写应该相同。因此,对于 PascalCase 标识符(如类名),您将得到 DBRate,而对于 camelCase 标识符(如局部变量),您可能有 ioChannel

这似乎也是 Java 中的主流约定。

长首字母缩略词

.NET Framework 指南建议三个字母或更长的首字母缩写词对 PascalCase 和 camelCase 标识符使用混合大小写,camelCase 标识符的第一个单词除外。因此,对于类名,您可能有 XmlDocument,而局部变量可能被命名为 httpRequest

Java 中并不总是遵循此约定。四个字符的首字母缩写词似乎通常使用大小写混合,但即使是 JCL 也对三个字母的首字母缩写词不一致。大部分好像都是大写的,像URLXMLSQLDOM,但也有一些异常(exception),例如 Jar.

结论

对于 Java:

对于 4 个以上字母的首字母缩写词,请使用大小写混合。标准库就是这样做的,而且很有意义。

对于 3 个字母的首字母缩写词,您可以像 JCL 一样使用全部大写,也可以像 .NET Framework 那样使用混合大小写。无论哪种方式,都要保持一致。

对于 2 个字母的首字母缩写词,请全部使用大写。

对于 2 个字母的缩写,Java 并没有真正的标准,但我建议使用混合大小写,除非与其他名称保持一致会使所有大写看起来更好。

关于带有首字母缩略词的 Java 命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2236807/

相关文章:

java - Java 包中的连字符公司名称

naming-conventions - 接口(interface)和版本控制

java - java中如何让一个方法转到main方法?

java - 递归 - Kata 挑战

java - 线程 "main"java.net.MalformedURLException : no protocol: 中出现异常

java - Apache POI 工作簿中的多线程

naming-conventions - 在命名我的函数以提供规律性时,我是否应该放弃语法正确性?

java - 当 stanford-nlp OpenIE 从句子中提取错误信息时?

java - Java的通用类型参数命名约定(带有多个字符)?

java - 为什么 Java 使用 this.member 的约定?