代码之家  ›  专栏  ›  技术社区  ›  Secko

我应该使用Java命名约定吗?

  •  3
  • Secko  · 技术社区  · 15 年前

    我被分配到一个大型项目中,这个项目将在Java中完成,并由团队中的几个程序员来查看。我希望代码是可读的和可理解的,所以希望命名约定适合所有阅读它的人。

    我想知道我是否必须使用Java命名约定,以便其他人查看它并自然地理解它。我总是使用一种自己的命名约定,它与Java命名约定没有什么区别,但继承了C/C++命名约定。

    最大的区别是变量、类和方法命名。我用的名字像 intLargestNumber, chGet, strName 变量。 funType, funErase, funAdd, getThis, setThis 方法和 Screen, clsPlay, cls_User 上课。其中Java命名约定将使用类似的东西 myNumber 对于变量, lowSplit() 对于一种方法和 Image 一个班。

    我的问题是,我应该使用Java命名约定还是使用我自己的命名约定并为我的代码提供词典或日志?

    10 回复  |  直到 15 年前
        1
  •  34
  •   Steve Gilham    15 年前

    使用该语言的标准将使新员工加入公司变得更简单。此外,使用一个外部定义的惯例可以帮助降低这些风格问题经常引发的宗教战争的水平。

        2
  •  12
  •   duffymo    15 年前

    使用Java命名约定。尝试将约定从一种语言应用到另一种语言几乎总是一个错误。事实上,大多数人不会花时间阅读项目中使用的约定。因此,使用既定的语言规范总是比较容易的。

        3
  •  11
  •   duffymo    15 年前

    就个人而言,我反对你的命名约定。它有一个名字:匈牙利符号。我认为在变量名中嵌入类型是一个糟糕的主意。如果我在你的队伍里,我会投反对票。

        4
  •  3
  •   Thilo    15 年前

    我被分配到一个大型项目中,这个项目将在Java中完成,并由团队中的几个程序员来查看。

    你问问你的团队领导怎么样?

    总的来说,你应该有一个很好的理由不遵守其他人希望看到的惯例。

        5
  •  3
  •   Stephen C    15 年前

    大多数Java程序在标准Java类库和第三方库中大量使用方法和类。只有极少数例外,这些符合Java样式指南中的建议。如果对名称强制使用明显不同的约定,则代码将包含难看的混合样式。你的风格的任何可能的(理论上的)优势都会在风格不一致的精神失调中消失。

        6
  •  3
  •   Community kavare    7 年前

    AS Steve Gilham Emil H 是的,当你编写Java代码时,你一定要坚持Java约定。(任何语言或平台显然都是如此。)

    至于 为什么? 这应该是非常重要的,我建议你看看经典的Java书, Effective Java ,作者:Joshua Bloch。在前言中( available online here !)盖伊·斯蒂尔为编写代码提供了一个很好、简洁的理由 惯用的 对于给定的语言。这本书还包含一个专门的部分(第二版第56项): 遵守公认的命名惯例 . 这个项目只有几页长,您可能已经知道了大部分的内容,但是更重要的是,作为一个整体,这本书是编写清晰和可维护Java代码的最佳指南。

    你提到这是一个由程序员团队完成的大型项目,这使得选择更加明确。即使所有 现在的 程序员们对你的C/C++类似的命名模式感到高兴,请记住,你的团队的组成在某一点上改变是很有道理的。一个新加入的Java程序员在面对一个遵循通用语言的习惯性Java的代码库时,肯定会感觉更自在。

        7
  •  2
  •   Draemon    15 年前

    这不应该是你的决定。这是一个应该由团队做出或强加给团队的决定。

        8
  •  1
  •   akf    15 年前

    使用标准命名约定将减少新雇员和其他迁移到项目的人员的增加。您也不需要为小组的利益记录您的个人风格,从而节省了描述字段含义和不使用标准的原因所花费的时间。另一个好处是,您可以使用许多IDE提供的特性来简单地生成代码,而很少进行定制——这是项目中所有开发人员都需要的过程。

        9
  •  1
  •   Jason Baker    15 年前

    我一直认为坚持错误总比前后不一致的正确好。如果您正在启动一个新项目,并且想要决定命名约定,那么一定要使用该标准。

    如果你已经有了一个项目,那就更难了。如果是这样的话,你将不得不决定是否将其命名约定更改为Java标准或保持它的方式是值得的。处理命名中不一致的代码总是很痛苦的,所以如果可以避免,我建议不要使用零碎的方法。

        10
  •  0
  •   Janusz Daniel Rindt    15 年前

    如果在Java中编码,是的。