初次学习Java的时候直接上手了一个小项目,因此Java的基本功不是很扎实。但,在接触参与比较大的项目时,代码命名规则常常是一个大问题。合理规范的命名规则,一来显得自己逼格高上;二来方便后检查,看到名称就知道是什么类型、使用是否正确等;最后又可以供其他人参考,提高代码可读性。最近在新建Java Project的时候突然想到了Java Package的命名,于是翻阅资料.................
Java package的命名规则全部使用小写字母,包括中间的字也是如此(Java Class一般首字母大写)。合理规范的package命名不仅可以每个Java package的唯一性,还有助于查找有可能隐藏于目录结构中某处的类。包的路径应该符合所开发的系统模块的定义,如控制模块对应控制模块、存储模块对应存储模块等,方便在看到包名酒能知道对应的class属于哪个模块。
按照惯例,package名称的第一部分应该是类的创建者的反顺序的Internet域名,这样,因为Internet域名应是独一无二的,所以package名称也应该是独一无二的。因此,我们可以看到多数开发人员采用自己公司在互联网上的域名称作为自己程序包的唯一前缀。例如: com.sun.swt.……。
从而,一般公司命名为“com/net/org.公司名.项目名.模块名....”。
那么个人的项目由该如何命名内?查了一些资料发现,一般个人项目包命名如下:
- indi :
个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。
包名为“indi.发起者名.项目名.模块名.……”。
- pers :
个人项目,指个人发起,独自完成,可分享的项目,copyright主要属于个人。
包名为“pers.个人名.项目名.模块名.……”。
- priv :
私有项目,指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人。
包名为“priv.个人名.项目名.模块名.……”。
- onem :
与“indi”相同。
- team :
团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有。
包名为“team.团队名.项目名.模块名.……”。