当前位置: 首页 > 面试题库 >

您对Java中的个人/爱好项目使用什么程序包命名约定?

金正阳
2023-03-14
问题内容

我已经熟悉使用域名创建唯一的包名称(即package
com.stackoverflow.widgets)的标准Java包命名约定。但是,对于如何为个人项目选择程序包名称,我从未见过任何建议。我认为是因为这确实是个人喜好问题。

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

由于我只是想知道人们对此有何不同的想法,因此我将其设为社区Wiki。

就我个人而言,我从来没有想过,但是我想今晚与Wicket一起玩耍,结果发现我对如何组织自己的业余项目并不清楚。对于爱好项目,至少有一个单独的,不同的软件包命名约定(至少在我看来是这样),将是使个人代码和与工作相关的代码清晰区分的一种好方法

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

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

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


问题答案:

如果您只是在做个人项目,没有其他人可以使用该代码,那么您可以组成自己喜欢的程序包名称。但是,不要组成以com.net.或其他顶级域名开头的内容,因为这暗示您拥有该域名(即,com.john仅因为您的名字恰好是John才用作包名)不是一个好主意。

如果要将代码提供给其他任何人,则应使用全局唯一的软件包名称,根据Java约定,这意味着您应该注册并使用域名。



 类似资料:
  • 在我有这个脚本名,它有两个词和。我该如何取一个正确的名字? 有选择: 下部金属外壳- 大写字母- 蛇壳—— 烤肉串盒—— 带有冒号分隔符的大口喝样式- 任何其他分隔符 什么选项是正确的?为什么?

  • 问题内容: 用Java编写实用程序类时,应遵循哪些良好准则? 包装应该是“ util”还是“ utils”?是ClassUtil还是ClassUtils?什么时候上课是“帮手”或“实用程序”?实用程序还是实用程序?还是混合使用它们? 标准Java库同时使用Utils和Utilities: javax.swing.Utilities javax.print.attribute.AttributeSe

  • 问题内容: 很久以前,我认为在Java中,将您拥有的域用于包命名是很愚蠢和尴尬的。 您在项目中使用哪个命名包? 问题答案: 一旦您了解了公约存在的原因,它就至少不会感到愚蠢或尴尬。 该方案有两个重要作用: 您所有的代码都包含在其他程序包不会与之冲突的程序包中。您拥有您的域名,因此是孤立的。如果我们没有这个约定,那么许多公司将有一个“实用程序”包,其中包含诸如“ StringUtil”,“ Mess

  • 问题内容: 我正在尝试在PlayFramework(播放框架2.2.1)中创建多子模块项目。 我应该如何在子模块中命名包? FE我的结构如下: 应用程式 conf doc 日志 模块: 共同: 应用程式: 控制器 楷模 意见 conf: 通用路线 build.sbt 项目 上市 目标 测试 我应该如何在文件中命名包(命名空间): /modules/common/app/controllers/Ap

  • 问题内容: 我的完整变量名称是“唯一代码”,但是我希望此变量是“ ucode” -ish。 那么考虑Java命名约定是正确的吗? 编码 uCode UCode 问题答案: 请参阅编码约定。对于变量,建议使用驼峰式大小写。回覆。命名,我本以为 将是最合乎逻辑的选择(我知道那不在您的选择列表中)。任何变体在我看来都是 unicode 的缩写,我认为这是一种误导。以上不是一个太长的名称(例如,它不是Ab

  • 我正在学习Java中的线程,以便创建一些并行运行的程序。设计具有并行性的程序是我从未在学校编程课上学到的东西。我知道如何创建线程并使其运行,但我不知道如何有效地使用它们。毕竟,我知道实际上并不是使用线程使程序快速,而是一个好的并行设计。所以我做了一些实验来测试我的知识。但是,我的并行版本实际上比无与伦比的版本运行得更慢。我开始怀疑我是否真的明白了。如果你能这么善良,你会介意看看我的以下程序吗: 我