【问题标题】:Efficient method names for formulas?公式的有效方法名称?
【发布时间】:2013-08-29 13:20:15
【问题描述】:

我对方法名称有疑问。我的项目有以下文件夹 Physics -> Equations -> Mechanics。这是我打算使用允许我计算各种方程的方法创建类的地方。问题在于如何给这些方法起有意义的名字来解释它们的用途。据我所知,每一个方程都没有一个可以帮助我们区分它们的名称。 我试图根据它们的最终结果给我的方法命名,它似乎工作得很好,但是重载方法是有限制的。到目前为止,我的输入变量只有两倍。

对此的最佳做法是什么?

【问题讨论】:

  • 使用你能想到的最好的名字。我不知道如何称呼它们...使用智能感知或常规注释来解释等式的作用
  • 您能否描述一些方法的作用,让我们了解您正在处理什么?如果你能描述他们的意图,我猜你可以说出他们的名字。你可能不得不忍受一些很长的名字,仅此而已。你能给我们一些你的“最终”名字吗?顺便说一句,“高效”是什么意思?

标签: oop coding-style


【解决方案1】:

From Oracle Docs:

命名方法

虽然方法名可以是任何合法标识符,但代码约定 限制方法名称。按照惯例,方法名应该是动词 小写或以小写动词开头的多词名称, 后面接形容词、名词等。在多词名称中,第一个 第二个和后面的每个单词的字母应该是 大写。以下是一些示例:

运行 runFast getBackground getFinalData compareTo setX isEmpty 通常,方法在其类中具有唯一名称。然而,一个 由于方法,方法可能与其他方法具有相同的名称 重载。

【讨论】:

  • 注意,大小写约定完全取决于语言。例如,在 C#/VB.NET 中,方法名称通常以大写字母开头,而 Java 通常以小写字母开头。我想从那个 Oracle 文档中最重要的一点是“方法名称应该是一个动词 [...],后跟形容词、名词等。”方法 = 动词,类 = 名词。
  • @valverij 是的,是的。由于 OP 没有指定语言,我也提到了来源。甲骨文文档。希望这会有所帮助。
  • 为动词命名欢呼——如果它做了动词的事情。如果它是谓词,则将其称为 IsVisible() 或其他名称。但是这家伙的所有方法可能都以动词Calculate开头,这并没有多大帮助。事实上,我可能会将它们放在一个名为Calculate 的静态类中,称其为动词前缀,并用名词为要计算的概念命名它们。 EnergyFromMassVelocity(双倍质量,双倍速度)或其他。当然,如果这是语言约定,则将其小写。
  • 嗯,是的,“是”是一个动词。德普。
【解决方案2】:

您可以在方法名称中使用参数类型:即。

DistanceBySpeedAndTime(double speed, double time);
DistanceByAccelerationAndTime(double acceleration, double time);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    • 2013-09-02
    • 2012-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多