我想知道c#中控件的命名規範。我已經看到了下面的鏈接,但它確實對控制不會談: http://msdn.microsoft.com/en-us/library/ms229002.aspxC#中windows控件的命名約定
其他鏈接告訴我用匈牙利命名法,但一些鏈接告訴我,這是不好的做法是使用匈牙利命名法。
個人使用的諺語符號似乎對我來說控制。 http://vb.byu.edu/vb/HungarianNotation.htm
但我不確定,需要一些指導?
我想知道c#中控件的命名規範。我已經看到了下面的鏈接,但它確實對控制不會談: http://msdn.microsoft.com/en-us/library/ms229002.aspxC#中windows控件的命名約定
其他鏈接告訴我用匈牙利命名法,但一些鏈接告訴我,這是不好的做法是使用匈牙利命名法。
個人使用的諺語符號似乎對我來說控制。 http://vb.byu.edu/vb/HungarianNotation.htm
但我不確定,需要一些指導?
儘管我個人反對匈牙利符號,但我傾向於使用類似於Windows控件的名稱。然而,我並不是使用前綴,而是傾向於將控件的類型作爲後綴。
liquidHydrogenCapacityTextBox
extraKetchupCheckBox
fileOpenMenuItem
favoriteFormerNSyncMemberDropDownList
我認爲這是確定的,而不是因爲它描述了變量的類型,但由於它是描述什麼樣的變量實際上包含。
將它命名爲使用您用於其餘代碼的相同轉換。
如果您的代碼使用匈牙利語,那麼使用該名稱命名。如果您的代碼使用其他內容,請使用該名稱。
一個例外將是面向公衆的API(類型,枚舉等)..我建議你採取MS的路線,並命名駱駝案例沒有前綴和其他cruft。
我在一段時間內使用了匈牙利語法,但主要問題是,如果您更改了控件的基礎類型,那麼您會遇到您決定的名稱。如今重構工具正在幫助,但在我的日常工作中,我不斷遇到不再是日曆和編輯器的「calSomething」或「edtWhatever」。我記得微軟也習慣這樣做,所以我們仍然在Windows SDK中使用wParam和lParam,儘管它們自從32位操作系統出現以後基本相同。
我的建議是根本不使用匈牙利符號,而是爲您的控件選擇有意義的名稱。智能感知等對於大多數時候確定控件的類型非常有用,使用前綴有時可能會讓偶爾的讀者不太清楚您的代碼,因爲它會將您的注意力從您程序的語義轉移到所使用的機制通過它。
我將在這裏採取少數立場,並說我們的商店仍然普遍使用匈牙利符號WinForms控件。主要是因爲這是我們首次編寫用戶界面時的標準,因此沒有理由回去做大規模重命名。當我們編寫新的UI代碼時,尤其是WPF,我們一直在向「userNameTextBox」這樣的直接名稱漂移(在那些極少數情況下,我們需要命名WPF控件)。它更具可讀性。