学习Java的童鞋们都知道,Java的包、类、借口、方法、变量、常量;JavaEE的三层模型等都有一套约定俗成的命名规则。编程
我学习每种语言都会关注相应的命名规则,一则体现本身比较专业;二来方便后检查,看到名称就知道是属于什么类型、占用多少内存、使用是否正确等;三又能够供其余人参考。学习
固然,学习Java也不例外,每次新建Java Project的时候都会想一下命名方式,尤为是对Java Package的命名。起初学习Java的时候都会推敲一番,该怎么命名所创建的Java Package,后来给本身约定俗成了,推敲少了,但命名确更规范了。spa
下面正式进入主题,讲讲我对Java Package命名规则的一些思考。对象
Java的包名都有小写单词组成,类名首字母大写;包的路径符合所开发的 系统模块的 定义,好比生产对生产,物资对物资,基础类对基础类。以便看了包名就明白是哪一个模块,从而直接到对应包里找相应的实现。内存
因为Java面向对象的特性,每名Java开发人员均可以编写属于本身的Java Package,为了保障每一个Java Package命名的惟一性,在最新的Java编程规范中,要求开发人员在本身定义的包名前加上惟一的前缀。因为互联网上的域名称是不会重复的,因此多数开发人员采用本身公司在互联网上的域名称做为本身程序包的惟一前缀。例如: com.sun.swt.……。开发
从而,咱们知道,通常公司命名为“com.公司名.项目名.模块名....”。
那,咱们我的的项目又怎么命名呢?域名
通过我对“我的的”单词搜索,有“individual、personal、private、one-man”,进一步对以上4个单词词意的分析,并在保证了惟一性,使用每一个单词的前4个字母做为前缀,正好和“com”也作了区分。以下:基础
indi :变量
个体项目,指我的发起,但非本身独自完成的项目,可公开或私有项目,copyright主要属于发起者。扩展
包名为“indi.发起者名.项目名.模块名.……”。
pers :
我的项目,指我的发起,独自完成,可分享的项目,copyright主要属于我的。
包名为“pers.我的名.项目名.模块名.……”。
priv :
私有项目,指我的发起,独自完成,非公开的私人使用的项目,copyright属于我的。
包名为“priv.我的名.项目名.模块名.……”。
onem :
与“indi”相同,推荐使用“indi”。
另外,我为了区分团队项目和前面所说项目的区分,还有了一下扩展:
team :
团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队全部。
包名为“team.团队名.项目名.模块名.……”。
com :
公司项目,copyright由项目发起的公司全部。
包名为“com.公司名.项目名.模块名.……”。