【发布时间】:2010-09-22 11:21:10
【问题描述】:
我已经熟悉使用域名创建唯一包名的标准 Java 包命名约定(即包com.stackoverflow.widgets)。但是,我从未见过任何关于如何为个人项目选择包名的建议。我认为这是因为这确实是个人品味的问题。
那么,您如何为永远不会投入生产的个人项目选择包名称(您可能会在业余时间尝试新框架)。假设您没有可以使用其域来创建包结构的个人网站,您会(或会)做什么?您是否有一个逻辑系统来为爱好项目生成新的包名称,或者您只是使用简单的一次性包名称,如mypackage?
由于我只是想看看不同人对此有何看法,因此我将其设为社区 wiki。
就我个人而言,我从来没有考虑过太多,但我今晚想和Wicket一起玩,我突然想到我并不清楚我想如何组织我的爱好项目.为业余爱好项目(至少在我看来)单独的、不同的包命名约定是一种很好的方式,可以将个人和工作相关的代码清楚地分开。
我正在考虑一个简单的分层命名约定,将我的个人项目的源代码保存在单个根文件夹中:
- 使用
myprojects作为根文件夹 - 附加项目名称
- 添加任何其他子包名称
因此,我的 Wicket 项目将在包 myprojects.learningwicket 中,单元测试将在包 myprojects.learningwicket.tests 中(例如)。
【问题讨论】:
-
普通,给自己弄一个个人域名(firstname-lastname.net)并用它作为包名。 package 的目的是全球唯一,所以 myprojects 并没有真正削减它。
-
Using an .onion domain 也是一个选项(如
onion.duskgytldkxiuqc6.packagename)。只要私钥保密,您就可以控制域名。因此,它可以免费注册(生成),并且是永久性的(与传统域不同)。它符合Java约定的字母,并且唯一地标识您。 -
您可以随时创建一个 GitHub 帐户并使用 io.github.username.*.
-
@BardiHarborow 谢谢,我采纳了你的建议。
-
@GabrielBB, GitHub Pages 允许您在 yourusername.github.io 托管 HTML 和 Jekyll 站点,因此 github.io 的子域比 github 的子域更“保证”对应于 GitHub 用户.com(可能随时用于内部 GitHub 项目)。