为什么编译时不需要遵循Java命名约定

时间:2014-04-11 18:48:07

标签: java naming-conventions

为什么Java应用程序不需要遵循Java命名约定?换句话说,为什么在应用程序中没有遵循约定时Java编译器不会引发错误?如果不存在包含例如以小写字母开头的类名或以大写字母开头的包名,那么它肯定会使每个程序员的生活更容易。

我知道现在不可能开始要求这样做,因为这会破坏现有的应用程序,但为什么从一开始就不需要这样做?

2 个答案:

答案 0 :(得分:2)

  

为什么Java应用程序不需要遵循Java命名约定?

因为他们约定而不是规则。将命名惯例作为实际规则存储在语言规范中是非常奇怪的 - 我不认为我曾经看到过这种情况。命名它主要是开发人员的选择,并提出一些建议,以使其他开发人员之间的事情更加一致。

任何拒绝编译非常规代码的Java编译器都将违反Java语言规范。

您是否还建议编译器强制执行大括号格式化?如何对import语句进行排序?

虽然我肯定会建议Java开发人员遵循命名约定 - 至少在合理的情况下(可能会出现奇怪的大写情况导致这种情况变得困难...... iPhone左右例子可能看起来很奇怪)我会反对他们被禁止作为" law"在语言规范中。

答案 1 :(得分:0)

Because Code conventions are nothing to compilers.

  

程序员遵循的代码约定,以帮助提高源代码的可读性,并使软件维护更容易。编码约定仅适用于软件项目的人工维护人员和同行评审人员。编译约定不是由编译器强制执行的。 / p>      

因此,不遵循部分或全部约定对源代码创建的可执行程序没有影响。