2010-08-30 57 views
1

在像QtCreator这样的IDE或者Visual C#的表单设计器中,我想听一下标签是否应该被命名,或者只是使用表单设计器的默认命名方案。如果该对象不会在代码中被触及并且仅用作不变的文本信息,该对象是否需要成为某种命名方案的一部分?如果我在用户输入其名称的文本字段上方有标签,是否应该将该标签命名为“lblNamePrompt”?使用表单设计器时,应该标注名称吗?

只是好奇得到一些回应。

回答

1

如果该对象不会在代码中被触及并且仅用作不变的文本信息,该对象是否需要成为某些命名方案的一部分?

如果我不打算使用它,我不会给它一个名字。

因为我很懒,而且因为如果某件事情如此工作,我不会解决这个问题。

1

我想保持代码明确即使你不打算去碰它“从不”(注意双引号)是一个很好的做法。我会建议给它一个好名字。

我不是一个.NET程序员,但我已经看到了一些代码是,他们使用的名称,如:

为:

标签:

  • lblFirstName
  • lblLastName
  • lblAddress

按钮:

  • btnSend
  • btnCancel

我非常PRO-YAGNI。但我认为值得给对象一个引用它的目的/用法的名称。

3

我不同意接受的答案。有一些方面的编程可以争辩说,懒惰是一种美德,但命名不是其中之一 - 无论是控制,变量还是成员,你的目标应该是清晰度,而不是效率。

最终有人需要理解和维护这段代码,即使它只是我试图回答你在Stack Overflow上发布的问题。您提供给对象的描述性名称越多,我或其他人就越容易筛选源代码。

假设你正在使用的窗体设计器在Visual Studio中,我提出了一个很简单的规则:

  • 如果你没有在你的代码中使用从任何地方控制计划,你应该将其GenerateMember属性设置为“False”。这可以防止设计人员为控件发布类级别的成员变量,而仅在InitializeComponent method中生成局部变量,从而限制混乱。然后,只有这样你才能感觉舒适,不给控制名称。

  • 否则,如果你打算或可能曾经从某处在代码中引用的控制,你应该给它一个描述名称。期间。输入内容并不难。

我认为这个问题的争议的部分是准匈牙利命名法是否有用
(如加里斯的答案建议),你不是否应该在所有给控件的名称。我个人“btn”的方式导致所有按钮控件在Intellisense中一起排序,但我知道有些人对匈牙利人有病态仇恨,这可能源于在编码的某个早期阶段被迫使用它事业,所以随意使用它或不依赖于你的乐趣。

相关问题