【问题标题】:Naming conventions for controls [closed]控件的命名约定[关闭]
【发布时间】:2011-01-02 12:01:02
【问题描述】:

在默认情况下使用 VS 时,编辑器会生成以下内容:

<asp:Button ID="Button1" runat="server" Text="Button" />

现在生成的 ID 是 Button1,即首字母大写。我的问题是命名控件的最佳方式是什么?

  • 提交按钮

  • btn提交

还是别的什么?

哪种命名约定被认为是好的?

【问题讨论】:

标签: c# asp.net naming-conventions


【解决方案1】:

btnSubmit 是匈牙利符号,我个人认为它不适合 UI 编程,因为控件的类型直接通过它在 Visual Studio 中的声明或智能感知很明显。

SubmitButton 更好。通常它采用一种形式 - Purpose-TypeOfControl

例如

InputLabel
FirstNameLabel
LastNameLabel
CancelButton

这是一个很好的参考: http://10rem.net/articles/net-naming-conventions-and-programming-standards---best-practices

更新:stylecop/Fxcop 也不鼓励使用匈牙利符号。所以最好不要完全使用。

【讨论】:

  • 您不能对长命名的小部件/控件使用此命名约定...尤其是在桌面编程中。
【解决方案2】:

第一个原因是可读性。名称应该是可读的,SubmitButtonbtnSubmit 更易读。

样式btnSubmit 称为匈牙利符号。它的一个问题是您必须不断为您创建的新型控件发明前缀。例如,如果您创建一个名为 StocksTrendPlotter 的自定义控件,您将不得不拥有诸如 stpGraph 这样难以阅读的变量。

查看disadvantages of the Hungarian notation.

【讨论】:

    【解决方案3】:

    约定的要点是您团队中的其他开发人员以及以后可能加入团队的开发人员共享的内容。虽然确保您可以在 6 个月、一年、两年后阅读自己的代码是件好事,但更重要的是,当您转移到另一个项目时,其他人可以阅读您的代码。因此,尽管存在关于哪种约定最有用/最易读的争论,但关键是确保它在整个团队中得到应用,并且新团队成员在加入时有合理的机会能够理解它。匈牙利语可能不漂亮或特别易读,但它非常普遍,我们都熟悉它——即使我们不喜欢它!

    【讨论】:

      【解决方案4】:

      “ux”或“ui”前缀是一种常见的表示法,因为它很好地将智能感知中的所有 UI 控件分组。如果您稍后交换控件类型(例如uxSalutation 可以从文本框更改为组合框,但影响有限。

      【讨论】:

        猜你喜欢
        • 2010-10-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-25
        • 2011-10-21
        • 2010-10-15
        • 2014-07-25
        • 2013-01-06
        相关资源
        最近更新 更多