如果我没有与我相关的域名,我该如何命名包裹?

Ber*_*ard 32 java namespaces packages

所以大多数Java资源在谈到软件包时都提到了一个com.yourcompany.project设置.但是,我不为公司工作,也没有网站.是否有常见的命名约定?也许是一个电子邮件地址?

Stu*_*son 18

使用像'bernard'这样的顶级域名或其他独特的域名.重要的一点是,域名是唯一的,以便您避免冲突,而不是从一个真正的互联网顶级域名(如org或com)开始.例如

import java.util.*;
import bernard.myProject.*;
import org.apache.commons.lang.*;
Run Code Online (Sandbox Code Playgroud)

  • 我很独特!我的意思是,错,这是有道理的.谢谢你. (17认同)
  • 我很确定伯纳德不止一个:P (14认同)
  • 如果您实际分发代码,它将来自"某个网站"(sourcrforge,谷歌代码,等等),并且他们将拥有您可以与项目名称一起使用的域名.理想情况下,这将是IDE中的一个简单的重构操作.在那之前,伯纳德. (3认同)
  • @izb:然后呢?包名称不需要是 GUID (2认同)

Mic*_*rdt 6

请注意,“反向域名”只是一个约定:很有用,因为如果每个人都遵守它,它肯定会避免冲突,但您不必遵循它。

只需选择一个您可以合理确定其他人不会使用且未被任何人注册为商标的名称- 因为这是您实际上可能陷入法律麻烦的一种方式。

这意味着使用您正在使用的免费服务的某种“子域”实际上是一个相当糟糕的主意,例如 deviantart 或 dyndns 或免费邮件服务!因为这些域名中的大多数(如果不是全部)都是商标术语,如果您的项目被广泛分发,则可能会被视为侵犯商标。仅仅因为他们允许您使用该名称作为电子邮件地址(或其他地址)并不意味着您可以将其用于其他任何用途 - 事实上,他们的 EULA 几乎肯定将使用限制为这一目的。


bel*_*bob 5

为什么不注册域名?

它们相当便宜,这样做可以保证你不会与其他任何人发生冲突(或者至少让你满意的是,如果确实发生了冲突,那就是另一个人必须重写他们的代码).

您可以注册自己的名称,也可以尝试组建一个名称,以便日后可以将其用作业务的基础.

  • bernard.surname.net
  • madeupname.net

这将花费你每年不到10GBP.

就个人而言,我会选择名称化的方法,因为它可能看起来更专业(除非你选择一些非常奇怪的东西).

另一个优势是很多域都带有电子邮件功能,为您提供比bernard.surname@hotmail.com更好的电子邮件地址.

  • 付费购买域名之类的东西只是为了在 Java 中用作包名称似乎是一个糟糕的主意。没有其他语言会遭受如此奇怪的资金使用。“相当便宜”是相当主观的。 (4认同)
  • 即使您限制自己使用域名,也不能保证唯一性。没有什么可以阻止其他人使用他们不拥有的域名,即使每个人都一致同意只使用他们拥有的域名,但这仍然不够 - 有人可能在您之前拥有该域名并发布了一个软件包,或者有人可能会在您之后拥有该域名并发布一个软件包。 (2认同)

bri*_*gge 5

如果您创建一个开源项目,可以使用Sourceforge注册它并使用net.sourceforge.myproject.这在许多Java项目中很常见.一个例子是PMD http://pmd.sourceforge.net/.