您在Java中使用什么包命名约定用于个人/业余爱好项目?

Mik*_*oss 139 java naming-conventions

我已经熟悉使用域名创建唯一包名(即包com.stackoverflow.widgets)的标准Java包命名约定.但是,我从未见过有关如何为个人项目选择包名的任何建议.我想因为这是因为这真的是个人品味的问题.

那么,你如何选择永远不会投入生产的个人项目的包名(你可能在业余时间尝试新的框架).假设您没有可以用来创建包结构的个人网站,那么您(或将要)做什么?你有一个逻辑系统来为业余爱好项目生成新的包名,或者你只是使用简单的丢弃包名称mypackage

由于我只是想知道不同人的想法是什么,我已经把它变成了一个社区维基.

就我个人而言,我从来没有多想过,但我想今晚和Wicket一起玩,我想到我不清楚我是如何组织自己的爱好项目的.对于业余爱好项目(在我看来,至少),一个单独的,独特的包命名约定将成为保持个人和工作相关代码明显彼此分离的好方法.

我正在考虑一个简单的分层命名约定,以便将我的个人项目的源保存在单个根文件夹中:

  • 使用myprojects作为根文件夹
  • 附加项目名称
  • 添加任何其他子包名称

所以,我的Wicket项目将在包中myprojects.learningwicket,单元测试将在包中myprojects.learningwicket.tests(例如).

Gre*_*ill 47

如果你只是做个人项目而没有其他人会使用这些代码,那么你可以组成一个你喜欢的包名.不化妆的东西,开头com.net.或其他顶级域名,但因为这将意味着你自己的域名(即使用com.john为您的包名,只是因为你的名字恰好是约翰是不是一个好主意) .

如果您要将代码提供给其他人,则应使用全局唯一的包名称,根据Java约定,您应该注册并使用域名.

  • 我想知道我是否可以使用我的github id和github域名?例如`com.github.mygithubid.myproject`? (9认同)
  • @KirillG.我会建议反对它,因为GitHub ID可以随时,任意次更改.当然,任何域名都可以改变,但不是那么容易或经常(通常不是).虽然我觉得这对业余爱好项目来说没问题. (2认同)

Flo*_*rin 25

我只是使用我的首字母:fg.nameofproject.etc

它减少了打字.它可以随时使用sf.net或com作为前缀.或组织.或com.google ..

由于这个项目是个性化的,所以它就像你刚刚压制的个性化礼品衬衫一样 - 它会感觉很好.

  • `bond.james.007` (40认同)
  • @click根据[指南](http://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html),这将是`bond.james._007` - 没有相同的戒指它...: - { (18认同)

pau*_*ray 20

pmurray_at_bigpond_dot_com.project.package
Run Code Online (Sandbox Code Playgroud)

  • +1.聪明.这将为您提供唯一的包名称,并一次性识别作者. (2认同)

Jam*_*hek 19

<sarcasm>呸.任何自尊的程序员都有自己的域名.这显然是一个棘手的问题.每个人都有自己的个人域名!</sarcasm>:-)

好吧,说真的,购买自定义域名可能是最简单的选择.每年大约10美元,您可以找到信誉良好的提供商来托管域名和转发电子邮件.

  • 很好的答案,但一个初学程序员可能不想购买一个网站只是为了关注如何使用关闭按钮创建GUI的一些教程网站或视频. (24认同)
  • 奇怪的是,这也会让你的自信心得到提升. (18认同)

Don*_*kby 15

我将大部分业余爱好项目存储在Google Code中,因此我只使用项目站点作为包名:com.googlecode.donkirkby.someproject.

  • 我们多么盲目地看不到我们行为的愚蠢?! (8认同)