组合包名称的命名约定

问题描述 投票:0回答:5

我想创建一个名为

form validator
的包。

这样写比较好吗

  • form_validator
    ,
  • formValidator
  • formvalidator

我想说我想避免

form.validator
。并且
form-validator
禁止

java package naming-conventions
5个回答
123
投票

来自关于包命名约定的文档

包名全部小写,避免与类或接口的名称冲突

所以这会给你留下以下两种可能性:

form_validator
formvalidator

实际上文档也明确指出,下划线出现在包名中时起着特殊的作用:

如果包名称以数字或其他字符开头,这些字符用作 Java 名称的开头是非法的,或者包名称包含保留的 Java 关键字,例如“int”...建议的约定是添加下划线。

因此,仅在特殊情况下才建议使用下划线,而您的命名问题似乎并不属于这种情况。 所以我推荐

formvalidator
作为包名。


52
投票

最传统的是第三种:

formvalidator

Google Java 风格指南注释:

5.2.1 包名称

包名全部小写,连续的单词简单地连接在一起(没有下划线)。例如,

com.example.deepspace
,而不是
com.example.deepSpace
com.example.deep_space

正如 @teppic 所说,Oracle Java Docs 指出

包名全部小写,避免与类或接口的名称冲突。


11
投票

在 Java 中,包名称全部为 小写。这意味着以下将是最理想的包装名称。

formvalidator

这也被接受了。

form_validator 

5
投票

包名全部小写,避免与类或接口的名称冲突。所以

  • form_validator
  • formvalidator
    .

详情请参阅这里


0
投票

我个人认为

form_validator
formvalidator
更清晰易读。

我怀疑 Java 社区对下划线的厌恶是采用 Pascal/camel-case 的副产品,并且在某些时候,避免在包名称中使用下划线成为一种约定,尽管它对可读性产生了负面影响。

© www.soinside.com 2019 - 2024. All rights reserved.