你用什么变数命名原则来完成 Java 中的个人/爱好项目?

我已经熟悉了标准的 Java 包变数命名原则,即使用域名来创建唯一的包名(即包 com.stackoverflow.widgets)。然而,我从来没有看到过任何关于如何为个人项目选择软件包名称的建议。我猜是因为这真的是个人品味的问题。

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

因为我只是好奇,看看不同的人对此有什么不同的想法,我已经使这个社区维基。

对于我个人来说,我从来没有想过这么多,但是今晚我想和 Wicket一起玩,我突然想到我并不清楚我想如何组织我的业余爱好项目。对于兴趣项目来说,一个单独的、独特的包变数命名原则(至少在我看来是这样的)可以很好地将个人代码和与工作相关的代码清晰地区分开来。

我在考虑一个简单的等级变数命名原则,将我个人项目的源代码保存在一个 root 文件夹中:

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

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

89473 次浏览

如果您只是在做一些其他人不会使用代码的个人项目,那么您可以创建一个您喜欢的包名称。但是,不要编造以 com.net.或其他顶级域开头的东西,因为那意味着你拥有域名(即。仅仅因为您的名字碰巧是 John 而使用 com.john作为您的软件包名称并不是一个好主意)。

如果你要把代码给别人,你应该使用一个全局唯一的包名,根据 Java 惯例,这意味着你应该注册和使用一个域名。

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

我叫 Anjan

通常我用 com.anjan

我有自己的梦幻公司,有时候我会用

Source ceforge 的传统(如 hibernate 和其他软件包所示)是 net.sf. *

所以,根据你的心情,你可以这么做。

我只用了我名字的首字母: fg.nameofproject.etc

可以减少打字量。 它可以在任何时候以 sf.net 或 com.org.or com.google 作为前缀。

由于这个项目是个人对待它特别喜欢你刚刚按个性化的礼物衬衫-它会感觉很好。

我想你已经解决了。在这里避免的诱惑是根本不用为包的名称而烦恼。保存一些按键很容易,因为“我只是在编写一些测试代码。”但是,当代码变得更好、更有用、更大时,您就会意识到,对于一个可能存在很长时间的库或应用程序,您已经有了一个良好的开端。它可能不是离开家庭网络的图书馆或应用程序,但关键是,您没有提前考虑。这就是计算机科学的丹麦幽灵——总是提前考虑,哪怕只是一点点。

我用来做爱好代码的变数命名原则和你的很像。我有一个名为“ Futura”的顶级目录(这个名字出现的原因又长又无聊) ,我所有的代码都挂在这个目录上。我确实尝试将我的代码组织到包库中,即使它可能是我从未用于其他项目的类或包。我将所有应用程序(也就是说,类中任何具有 void main (String [] args)的应用程序)都放在 Futura.app 中。* 文件夹。我还尝试为自己的代码模仿标准的 Java 库包名称,尽管在一些情况下,由于我自己的喜好,我打破了惯例(例如,用于 Internet 的 Futura.inet,而不仅仅是套接字、代码,以及用于非 util 内容的 Futura.Collection)套用大卫 · 马梅的话: 总是一概而论。总是泛化!

从你过去发布问题的谨慎程度来看,我猜你也同意我的最后一点: 你不必把业余黑客当作一个企业级的项目,但是如果你把一些纪律带到主场游戏中,这个爱好就会更有价值。

我只是用我的名字: surname.initials.xxx ,作为简洁和避免碰撞之间的一个很好的组成部分。我认为,如果我选择公开发布代码,这将提供一个合理的无冲突名称空间。我还写了一个小程序,可以重新打包整个目录树,所以我认为我应该重新打包发布它是相当无痛的... 因此我没有失去太多的睡眠在它。

Surname.initials.xxx 之后,我使用应用程序包、库包和 tst 中的任何一个应用程序来完成我的纯粹实验。

啊。任何有自尊心的程序员都会有自己的域名。这显然是个陷阱问题。每个人都有自己的个人域名!</sarcasm>: -)

好吧,说正经的,买一个自定义域名可能是最简单的选择。大约10美元一年,你可以找到声誉良好的供应商主机域名和转发电子邮件。

你怎么看姓氏,名字,项目? 就像 Luz.marlon 项目?

我也想过问同样的问题。到目前为止,我用了 com.tehvan 这个前缀,虽然我没有真正的公司。

pmurray_at_bigpond_dot_com.project.package

我使用我的 OpenID URL,然后附加我的项目的名称。例如,com.myopenid.cd1.twitter是我一直在开发的 Twitter 客户端的根包。

我的名字是: prj.project_name