2011-04-27 80 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控件)。它更具可读性。