我有很多在.NET窗體中開發的窗體,它們都被命名爲無論它們是什麼都沒有前綴。但是,我經常發現自己需要聲明另一個包含表單使用的列名的類。.NET命名約定的類定義與表格
例如,我有一個名爲Address的類,它是一個用於維護地址的表單。但是,我還需要一個類,我想也稱爲地址,基本上只包含名稱和地址字段的聲明。我正在尋找一個好的命名約定來區分兩者(類定義與表單)。
我有很多在.NET窗體中開發的窗體,它們都被命名爲無論它們是什麼都沒有前綴。但是,我經常發現自己需要聲明另一個包含表單使用的列名的類。.NET命名約定的類定義與表格
例如,我有一個名爲Address的類,它是一個用於維護地址的表單。但是,我還需要一個類,我想也稱爲地址,基本上只包含名稱和地址字段的聲明。我正在尋找一個好的命名約定來區分兩者(類定義與表單)。
Windows窗體的常規約定是用Form
後綴表單類的名稱。所以,你的地址類應該被稱爲Address
(因爲畢竟它是一個地址),但是用於編輯地址的表單應該是AddressForm
(或者AddressListForm
或AddressEditorForm
等) - 取決於它究竟是什麼)。
也許這樣?
class Address { }
class AddressForm { }
使用Namespaces。
所以你的形式可能是在命名空間
YourCompanyName.UI.WinForms.Address
你的值對象可能是
YourCompanyName.Business.Values.Address
然後,你可以使用完整的命名空間中引用它們。
這可能會非常快速地混淆。 – 2009-09-24 17:58:23
@Andrew Hare:沒錯,但他想要表單名稱和值對象的地址,唯一的方法就是使用名稱空間。我寧願你的AddressForm和Address的方法。 – 2009-09-24 18:00:42
我建議Address
和AddressForm
(或AddressEditor
或類似的東西),也是如此。命名形式Address
似乎對我來說顯然是錯誤的 - 類不代表地址,而是表示查看或操作地址的表單。
如果表單旨在成爲模式表單,則可以使用Dialog而不是Form作爲後綴。
以及我將使用編輯器,屬性或瀏覽器關鍵字來指定表單的用途。
AddressEditorForm,AddressPropertiesForm比AddressForm好。
對於GUI元素上的匈牙利表示法+1。 – ParmesanCodice 2009-09-24 18:01:13
這不是匈牙利符號 - 匈牙利語是使用縮寫前綴。 – 2009-09-24 18:42:49
SharpDevelop C#編碼風格指南(http://www.icsharpcode.net/TechNotes/)將此稱爲匈牙利符號: 「8.2。命名指南 匈牙利符號是一組定義的前綴和後綴,它們被應用於名稱來反映變量的類型,這種命名方式被廣泛使用「 維基百科只引用前綴。現在無論它是否是一個帖子或前綴確實沒有什麼區別,它的*名稱*表示* type *,這是匈牙利的符號。 – ParmesanCodice 2009-09-24 19:04:21