Java '的包命名;深度亚域';组织机构

Java '的包命名;深度亚域';组织机构,java,naming-conventions,package,Java,Naming Conventions,Package,滚动java代码时,我始终坚持的原则。通常这是非常可靠的,可以防止任何命名冲突问题。然而,当你与“深度次领域化”组织打交道时——例如cisb.justice.qld.gov.au——它有点过头了。特别是当您添加内部约定并最终得到类似于au.gov.qld.justice.cisb.comm.sony.pfm42v1.等内容时 现在,我假设我不是昆士兰政府唯一的程序员,司法部也一样,简化为au.gov.qld.和au.gov.qld.Justice.都被淘汰了 其他人在类似情况下使用的一些约定是什

滚动java代码时,我始终坚持
的原则。通常这是非常可靠的,可以防止任何命名冲突问题。然而,当你与“深度次领域化”组织打交道时——例如
cisb.justice.qld.gov.au
——它有点过头了。特别是当您添加内部约定并最终得到类似于
au.gov.qld.justice.cisb.comm.sony.pfm42v1.
等内容时

现在,我假设我不是昆士兰政府唯一的程序员,司法部也一样,简化为
au.gov.qld.
au.gov.qld.Justice.
都被淘汰了


其他人在类似情况下使用的一些约定是什么?

嗯,是的,显然
au.gov.justice
已经过时了,因为这不是你域名的一部分
au.gov.justice
将意味着联邦政府,而不是州政府

<>如果明显的选择对你来说太长了,请考虑<代码>正义> Qual.Guv.Au/< >或<代码>法院。 这是否合适将取决于该部门有多少其他员工,该部门的结构如何,以及是否有任何策略,但这可能是可以接受的,因为您仍然拥有使包名称唯一的项目名称

这是你们部门第一次出现这个问题吗?也许其他人已经选择了一个会议

政府部门面临的另一个问题是,它们经常更名

你们部门刚换了名字吗?也许你应该坚持使用旧名字,或者选择下一次名字改变时仍然有效的名字


提醒我们,名称空间的主要目的是确保包名是唯一的,因此,如果您以
au.gov.qld
开始包名,您可能会有一些灵活性,只要您采取措施确保名称不会与其他政府部门冲突。

好的,是的,显然,
au.gov.justice
已经退出,因为这不是你域名的一部分
au.gov.justice
将意味着联邦政府,而不是州政府

<>如果明显的选择对你来说太长了,请考虑<代码>正义> Qual.Guv.Au/< >或<代码>法院。 这是否合适将取决于该部门有多少其他员工,该部门的结构如何,以及是否有任何策略,但这可能是可以接受的,因为您仍然拥有使包名称唯一的项目名称

这是你们部门第一次出现这个问题吗?也许其他人已经选择了一个会议

政府部门面临的另一个问题是,它们经常更名

你们部门刚换了名字吗?也许你应该坚持使用旧名字,或者选择下一次名字改变时仍然有效的名字


提醒我们,名称空间的主要目的是确保包名是唯一的,因此如果您使用
au.gov.qld
启动包名,如果您采取措施确保该名称不会与其他政府部门发生冲突,您可能会有少量的灵活性。

我还没有听说过任何处理此问题的通用惯例

如果这是一个真正的问题,那么您需要与昆士兰司法部的其他开发人员讨论,以制定一个特定于公司的约定

公司信息系统部(?)是否为昆士兰司法部制定了IT政策?你就不能跟政策专家说几句,让他发一份备忘录吗?(是的,我知道……生活从来没有这么简单……但也许值得一试。)


但是坦率地说,
cisb.justice.qld.gov.au
并不是那么“过分”。我还没有听说过任何处理这个问题的一般性惯例

如果这是一个真正的问题,那么您需要与昆士兰司法部的其他开发人员讨论,以制定一个特定于公司的约定

公司信息系统部(?)是否为昆士兰司法部制定了IT政策?你就不能跟政策专家说几句,让他发一份备忘录吗?(是的,我知道……生活从来没有这么简单……但也许值得一试。)


但坦率地说,
cisb.justice.qld.gov.au
并不是那么“过分”。所采取的方法是利用
au.gov.qld.justice.duet.
作为基本包。这符合java标准,并引用项目名称而不是内部部门名称,以防止将来出现部门名称混乱的问题。

采取的方法是利用
au.gov.qld.justice.duet.
作为基本包。这符合java标准,并引用项目名称而不是内部部门名称,以防止将来出现部门名称混乱的任何问题。

我使第一个包超过域名be,即项目名称。我使第一个包超过域名be,即项目名称。CISB!=因此,不存在未建立的包命名约定。这适用于某些控制系统,因此部门范围内的策略实施是不可行的。CISB!=因此,不存在未建立的包命名约定。这适用于某些控制系统,因此部门范围内的政策实施是不可能的。