【问题标题】:Package structure naming convention?包结构命名约定?
【发布时间】:2014-12-18 10:32:24
【问题描述】:

通常我们根据以下约定来构建包结构

我们通过首先拥有(或属于 具有) Internet 域名的组织,例如 sun.com。你 然后逐个组件反转这个名称,以获得,在这个 例如,com.sun,并将其用作包名称的前缀, 使用您的组织内制定的约定来进一步 管理软件包名称。

我在 abc 公司工作,该公司的网站域为 abc.com。现在我正在构建一个产品 xyz 没有任何域名和网站。不同的客户会购买它,然后自己获得域名。 我的问题是包名应该按约定以com.abc or com.xyz

开头

【问题讨论】:

  • 这完全取决于您的选择,但在我看来应该是 com.abc

标签: java package naming-conventions


【解决方案1】:

如果你把它放在包 com.xyz 中,如果他/她使用相同的错误命名约定,它可能会与另一个开发人员或供应商开发的产品发生冲突,这意味着它们不能在同一个 Java 应用程序中使用或者它们两者的类不能在没有潜在冲突的情况下导入。

如果您将其命名为 com.abc.xyz 并且如果另一个供应商/开发人员开发相同的产品并使用相同的命名约定,他/她会将其放入包中 com.def.xyz 这将允许在同一个 Java 中使用它们应用程序,而不必担心冲突。

所以绝对推荐com.abc.xyz这个包。

【讨论】:

    【解决方案2】:

    这个约定只是一个命名约定,所以它与技术部分无关,你给它的所有名称都将(以某种方式)无害。命名约定仅用于构建您的代码并避免与其他开发冲突;这是使用域名的主要原因。因此,最后,您可以使用任何您真正想要或认为适合您的情况的名称。

    【讨论】:

      【解决方案3】:

      除了讨论是否使用约定之外,如果您使用它,它应该反映您公司的领域,并且与可能的客户完全无关。

      除了避免碰撞之外,它还提供有关谁创建的信息,例如一个库,如果您在项目中找到一个随机(可能已重命名)的库并想查找有关它的信息,它会有所帮助。

      【讨论】:

        猜你喜欢
        • 2011-12-16
        • 1970-01-01
        • 1970-01-01
        • 2013-12-31
        • 2013-02-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多