【问题标题】:Naming convention for property [closed]属性的命名约定[关闭]
【发布时间】:2009-05-14 03:00:14
【问题描述】:

哪一个更可取或更清楚?

public int FrozenRegionWidth { get; set; }

或者……

public int WidthOfFrozenRegion { get; set; }

【问题讨论】:

  • 请添加语言标签,有些人不确定您在说什么语言。

标签: c# naming-conventions coding-style


【解决方案1】:

我会说 FrozenRegionWidth,否则你最终会得到一大堆以 'WidthOf..' 开头的属性。

话虽如此,你不应该有类似 FrozenRegion.Width 的东西吗(我会在 WidthOfFrozenRegion 上寻找 FrozenRegionWidth 的另一个原因)?

【讨论】:

    【解决方案2】:

    我更喜欢 FrozenRegionWidth。

    有关更多信息,请参阅http://msdn.microsoft.com/en-us/library/ms229012.aspx 上的 .NET 框架命名指南

    【讨论】:

      【解决方案3】:

      我不确定这是否是这个社区的问题。我相信这一定是您团队的问题。

      如果我只是团队中的开发人员并且我必须选择一个名称,我会创建一个具有 Width 属性的 FrozenRegion 类。

      【讨论】:

      • 我认为这是这个社区的问题。我不认为这是特定于项目的。问题可以写成 WidthOfBlabla 或 BlablaWidth?
      【解决方案4】:

      FrozenRegionWidth 是随处使用的。你就是不能用

      NameOfCustomer
      

      而不是

      CustomerName
      

      这使我们的变量 short n 变得甜美。你不能继续写长句子作为变量名。 在这里,您正在创建一个自动属性。记住这一点。它更像是一个变量。

      【讨论】:

        【解决方案5】:

        但是,请考虑以下情况:

        您正在尝试查找冻结区域的宽度,但假设您不确定它是否称为冻结区域。也许有些人称之为冻结区域,另一个人称之为 RegionThatIsFrozen(我知道,蹩脚的例子)或者其他什么:在这种情况下,程序员输入 WidthOf 并等待自动完成并选择正确的不是更容易吗?

        【讨论】:

        • 如果您正在谈论使用 Intellisense,是否可以期望以下所有条件都为真: - 使用您的类的开发人员完全不了解它 - 开发人员没有任何文档可参考to - 该类有很多属性,很难通过浏览 Intellisense 列表来判断哪个是哪个 - 所有属性都没有 XML cmets 来描述它们是什么
        【解决方案6】:

        个人比较喜欢

        public int FrozenRegionWidth { get; set; }
        

        【讨论】:

          【解决方案7】:

          我倾向于在名称中首先提供更通用信息的任何形式。

          也就是说,我希望这样当我在智能感知中查看成员列表时,它们会根据我想要找到它们的方式进行分组。如果“FrozenRegion”对我来说比我想命名相关属性 FrozenRegionWidth、FrozenRegionFoo、FrozenRegionBar 更重要。如果我正在查看“宽度”,我想要 WidthFrozenRegion、WidthFoo、WidthBar。

          所以这取决于你的用法,但名称从最通用到最具体。

          【讨论】:

            【解决方案8】:

            This question我问过类似的问题可能有帮助也可能没有帮助,它有关于名词选择的指示符。

            为了与 .NET BCL 命名约定保持一致,我将使用 FrozenRegionWidth。包含介词是不寻常的。

            如上所述,FrozenWidth 看起来像是结构/值类型的主要候选对象。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2012-12-03
              • 1970-01-01
              • 2015-11-21
              • 1970-01-01
              • 2010-10-29
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多