2011-04-27 38 views

回答

2

儘管我個人反對匈牙利符號,但我傾向於使用類似於Windows控件的名稱。然而,我並不是使用前綴,而是傾向於將控件的類型作爲後綴。

liquidHydrogenCapacityTextBox 
extraKetchupCheckBox 
fileOpenMenuItem 
favoriteFormerNSyncMemberDropDownList 

我認爲這是確定的,而不是因爲它描述了變量的類型,但由於它是描述什麼樣的變量實際上包含。

2

將它命名爲使用您用於其餘代碼的相同轉換。

如果您的代碼使用匈牙利語,那麼使用該名稱命名。如果您的代碼使用其他內容,請使用該名稱。

一個例外將是面向公衆的API(類型,枚舉等)..我建議你採取MS的路線,並命名駱駝案例沒有前綴和其他cruft。

1

我在一段時間內使用了匈牙利語法,但主要問題是,如果您更改了控件的基礎類型,那麼您會遇到您決定的名稱。如今重構工具正在幫助,但在我的日常工作中,我不斷遇到不再是日曆和編輯器的「calSomething」或「edtWhatever」。我記得微軟也習慣這樣做,所以我們仍然在Windows SDK中使用wParam和lParam,儘管它們自從32位操作系統出現以後基本相同。

我的建議是根本不使用匈牙利符號,而是爲您的控件選擇有意義的名稱。智能感知等對於大多數時候確定控件的類型非常有用,使用前綴有時可能會讓偶爾的讀者不太清楚您的代碼,因爲它會將您的注意力從您程序的語義轉移到所使用的機制通過它。

0

我將在這裏採取少數立場,並說我們的商店仍然普遍使用匈牙利符號WinForms控件。主要是因爲這是我們首次編寫用戶界面時的標準,因此沒有理由回去做大規模重命名。當我們編寫新的UI代碼時,尤其是WPF,我們一直在向「userNameTextBox」這樣的直接名稱漂移(在那些極少數情況下,我們需要命名WPF控件)。它更具可讀性。