Java或Android包名,按照传统,写成反转的域名形式。网上对这种写法的好处说得头头是道,但其实是有问题的。
“包名约定是避免冲突”
“Sun 推荐的避免包名冲突方法:把开发组织的域名倒过来写。” [1]. 为什么android的package name的名字一般以com.开头? . 知乎. [2019-07-21].
那个人没有域名怎么办?有的人说用personal.gqqnbig [2] . What should I use for a package name if I don't have a domain? . . 2012-12-03 [2019-07-21].
(这个合理的问题还被stackexchange的傻逼们关闭了),但是我如果下次注册了一个域名,是不是就要改用域名作包名了?那我两次开发的软件,包名不同,是不是就不一致了,别人是不是会被搞混了?
还有人说包名要从大到小排列。如果展开一个jar文件,会看到com、org、net,再展开,一层层的,很好看 [3] Scott Stanchfield. Do you really use your reverse domain for package naming in java? . . 2008-10-09 [2019-07-21].
。你喜欢层次,那为什么不银河系.太阳系.地球.美洲.com.apple
,这层次不也很清晰吗?为什么第一层是com,而不是美洲,或直接是apple?所以层次一层层的理由,不堪一击。
我使用的命名空间,一直是gqqnbig,就这样,没有什么com、personal。简洁!
所以Java有很多过时、奇怪的规范,标准命令空间里还有些方法不一致。垃圾!