对于国际用户,Java包命名是否有任何例外?

时间:2016-06-10 13:42:56

标签: java naming-conventions

虽然我理解反向URL系统的原理,但对于拥有非国家域名的公司来说,它似乎才有意义。虽然包名以com开头。或组织。是有用的和简短的,并提出了可能的许可证的建议,一个包必须以英国开始的想法。 ,fr。 , J.P。等等 - 然后通常是该国的.com或.org版本的另一部分 - 仅仅因为它的编写地点,这与它在软件中的使用无关,似乎很愚蠢。

这是否有任何标准的替代惯例?

1 个答案:

答案 0 :(得分:2)

  

虽然包名以com开头。或组织。很有用

恕我直言,只有在您的代码与其他公司或组织共享时才有用。

在大多数项目中,公司都竭尽全力确保他们的知识产权留在公司。因此,使用专为共享代码而设计的结构是没有意义的。顺便说一句,即使项目需要稍后更改,这也不是问题,您可以使用jarjar等工具更改JAR的包。

因此对大多数公司内部项目无用。

  

对此有没有标准的替代惯例?

我会在模块名称后命名包。例如如果你使用maven我会用

<groupId>mygroupid</groupId>
<artifactId>myartifact</artifactId>

并使包匹配

package mygroupid.myartifactid;

或子包。

无论您是否使用域名,这都有效。