2016-07-28 121 views
1

我学习Java和发现在教程中使用,以及对Oracle's website的命名约定,com.etc.project.program我是否应该遵循Java包的命名约定?

难道我真的要遵守这个习惯?

以下有哪些优缺点?

+1

如果您想为其他用户提供公共API,则最好遵循这些约定 – Andrew

+2

可能的[Java包命名约定]重复(http://stackoverflow.com/questions/7411717/java-package-naming-conventions ) – Tom

回答

4

公约是不是强制性的,但帮助

  • 你创建bettter代码和
  • 别人的理解更容易:

根据wikipedia

理由使用命名约定(反对d,以允许程序员选择的任何字符序列),包括以下内容:

  • 减少阅读和理解源代码
  • ,使代码所需的工作量点评专注于更重要的问题不是争论的语法和命名标准。
  • 使代码质量审查工具能够将其报告主要集中在除语法和样式首选项以外的重要问题。
  • 增强源代码外观(例如,通过不允许超长名称或不明确的缩写)。
+0

谢谢@Jordi,我不知道我错过了“其他人”。为了解释名字,必须有一个标准的标准。 – dhirwan

0

不,你不必遵循任何约定,你可以写的一切,编译器允许。

但是,遵循一些约定会使其他人(以及未来自己)更容易理解您的代码。

0

正如你在你的问题说本身,它只是一个“公约”

公约一种方式,其中一些通常完成。

这只是一个约定。如果你想跟随它,取决于你。 但总是建议您遵循这些惯例。在Java中

NAME   CONVENTION 
class name  should start with uppercase letter and be a noun e.g. String, Color, Button, System, Thread etc. 
interface name should start with uppercase letter and be an adjective e.g. Runnable, Remote, ActionListener etc. 
method name  should start with lowercase letter and be a verb e.g. actionPerformed(), main(), print(), println() etc. 
variable name should start with lowercase letter e.g. firstName, orderNumber etc. 
package name should be in lowercase letter e.g. java, lang, sql, util etc. 
constants name should be in uppercase letter. e.g. RED, YELLOW, MAX_PRIORITY etc. 
0

包命名约定


命名约定只是约定。你可以忽略它们,但你不应该这样做。

约定有助于防止命名冲突,并使您的代码更易被其他人阅读。

一旦你开始与其他开发商合作,遵循约定会使你和他们的工作更容易。

而且,他们真的并不难效仿。

0

。它有讲这个herehere其他StackOverflow的页面。

但如果你还没有看到他们,让我给你一些原因和参考:

如果你只是在做个人项目中没人会使用 代码,那么你就可以补包名称,你喜欢。不要组成 以com开头的东西。或网。或者其他顶级域名 虽然,因为这将意味着你自己的域名(使用com.john为您的包名即 只是因为你的名字恰好 是约翰是不是一个好主意)。

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

+0

倾向于将此问题标记为重复,而不是从那里复制答案。 – Tom

+0

好的,会这样做。不管怎样,谢谢 –

+0

感谢@YoungMillie,得到了它,我真的搜查了同样的问题,但并没有达到正确的答案。 – dhirwan