可能是重复问题:
Java包名中的单词分隔符惯例是什么?
我想知道是否有一些适用于包含多个单词的包名的代码约定。例如,包名com.dreamcom.objectInterfaces
。在这种情况下,驼峰命名法是否适用?
可能是重复问题:
Java包名中的单词分隔符惯例是什么?
我想知道是否有一些适用于包含多个单词的包名的代码约定。例如,包名com.dreamcom.objectInterfaces
。在这种情况下,驼峰命名法是否适用?
来自维基百科的Java包命名约定(已加重):
包通常使用分层命名模式进行定义,层次结构中的级别由句点(.)(发音为“点”)分隔。虽然命名层次结构中较低的包通常被称为相应层次结构中较高的包的“子包”,但几乎没有语义关系。Java语言规范建立了包命名约定,以避免两个已发布的包具有相同的名称的可能性。命名约定描述了如何创建唯一的包名称,以便广泛分发的包将具有唯一的命名空间。这使得包可以分别、轻松和自动地安装和编目。我不喜欢驼峰式的包名。对于一个包含多个单词的包名,我考虑以下几点:
"com.dreamcom.interfaces" 不够好吗?
"com.dreamcom.object.interfaces" 行得通吗?
如果不行,那么与其使用驼峰式,还不如考虑 "com.dreamcom.objectinterfaces"。
原因是包名反映了主机操作系统上的目录结构。在 Linux 上,"com.dreamcom.objectInterfaces" 和 "com.dreamcom.objectinterfaces" 是不同的,而在 Windows 上它们是相同的。