什么是以下Java类的正确名称: DVDPlayer
或DvdPlayer
?
Answer 1:
因为它看起来像答案是,有在Java中对此没有统一的标准,我想指出的是,.NET Framework设计准则不指定。
现在一声,我来题外话之前,请记住,对于Java类的命名规则和.NET Framework是非常相似的,这使得作为一个有说服力的参考价值的。NET准则。
通用规则
这两个准则建议仅使用首字母缩写词时的缩写,是众所周知的,并且很好理解。 DVD或XML是这个极好的例子,因为当你将马上认出来,这将需要更长的时间来识别扩展版本。
缩略语
.NET框架指引建议不要使用的缩写(相对于首字母缩写词),不同之处在于两个公共缩写“ID”,并且可以在识别符被用于“OK”。 当使用缩写,大小写混合Id
总是使用除了一个驼峰标识符的第一个字(而不是一个PascalCase标识符)。
在Java这个约定只是遵循一些时间。 看看如何混合拼写getID
和getId
都在JCL。 (滚动中途那一页)。 在Java的版本8虽然getId
被用得越来越多,这暗示了PascalCase约定时下首选。 最好是只避免使用缩写完全有可能的时候。
缩略语短
.NET框架指引说两个字母的缩写,如“IO”,应该有两个字母相同的情况。 所以对于PascalCase标识符(如类名),你会得到DBRate
,而对于驼峰标识符(如局部变量),你可能有ioChannel
。
这肯定似乎是在Java中的普遍惯例也是如此。
缩略语龙
.NET框架指南推荐缩略词三个字母或更长的使用大小写混合的PascalCase和驼峰标识符,除驼峰标识的第一个字。 因此,对于一类的名字,你可能有XmlDocument
,而局部变量可能被命名httpRequest
。
此约定并不总是跟随在Java中。 四字缩写词似乎到通常使用大小写混合,但即使是JCL是不是三个字母的缩写一致。 他们中的大多数似乎是全部大写,如“URL”,“XML”,“SQL”和“DOM”,但也有像“JAR”一些例外。
结论
对于Java:
对于4+字母的缩写,使用大小写混合。 标准库做到这一点,它只是很有道理。
3名字母的缩写,可以使用全部大写,如JCL,或像.NET框架确实可以使用混合大小写。 无论哪种方式,是一致的。
2名字母的缩写,使用全部大写。
2名字母缩写,Java并没有真正有一个标准,但我建议使用混合的情况下,除非有其他名称的一致性将使全部大写更好看。
Answer 2:
有没有“正确”的答案。 只是一组的做法和惯例,以更好地与你的其他工具打。
因此,我更喜欢DvdPlayer
。 这是更有益,因为在Eclipse中,你可以做按Ctrl + Shift + T和每个单词的第一个字母挑班。
Answer 3:
我看到他们两个在野外使用,和Sun似乎去的DVDPlayer
的风格。 我更喜欢DvdPlayer
,但是,因为这种方式很明显这里所说的边界即使有多个连续的首字母缩写词,如HTTPURLConnection
。
Answer 4:
我喜欢用以下方式来定义类的各个实例:
Catalogue catalogue;
Person person;
因此,如果我用DVDPlayer
,我会怎么调用者的一个实例? dVDPlayer
? 因此,我会选择在DvdPlayer
类的名称,这样你就可以像命名实例dvdPlayer
。
Answer 5:
从JavaSE的类,阿帕奇百科全书和春天的一些例子:
-
HttpURLConnection
-
HTTPAddress
-
UrlPathHelper
-
AopProxy
-
ISBNValidator
所以 - 它其实并不重要。
Answer 6:
有效的Java似乎更喜欢DVD播放机。
Answer 7:
从太阳Java文档 :
类名应该是名词,与每个内部字大写首字母大小写混合。 尽量使你的类名简洁而富于描述。 使用完整的词,避免缩写词(除非该缩写比长形式,如URL或HTML更为广泛的应用)。
Answer 8:
正如其他人所指出的,其风格事情,不同项目之间的区别。 谷歌项目,如番石榴和GWT喜欢DvdPlayer
的风格。
https://google.github.io/styleguide/javaguide.html#s5.3-camel-case
Answer 9:
DVDPlayer
是标准的,但DvdPlayer
并不少见。
你往往看不到getId
。 这可能是由于思维ID是“身份”的缩短。 它实际上是身份证明文件的缩写。
HttpURLConnection
通常给定为混合惯例的例子。 然而,在一个URL用作协议名称“HTTP”应为小写(虽然上壳体通常接受)。
Answer 10:
有没有“正确”的,只有在这里的喜好。
太阳在他们的名字包含“URL”和“HTML”类的方式是一致的,但我看到HTTP同时使用全部大写和的javadoc骆驼情况。
就个人而言,我更喜欢DVD播放机。