2010-08-30 44 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中一起排序,但我知道有些人對匈牙利人有病態仇恨,這可能源於在編碼的某個早期階段被迫使用它事業,所以隨意使用它或不依賴於你的樂趣。

相關問題