作为一名初学程序员,我正试图为自己制定一个标准的命名约定.我意识到这是个人喜好,但我试图从你们中的一些人(很多人)中得到一些比我更聪明的想法.
我不是在谈论骆驼符号,而是如何命名你的变量等等.恕我直言,var_Quantity比Q或varQ更具描述性.但是,如何防止变量变得太长.我试图通过命名我的控件来更具描述性,但我最终得到了一些类似于"rtxtboxAddrLine1"的RadTextBox,其中包含地址行1.对我而言,这是无法管理的,尽管它很清楚该控件是什么.
我只是好奇你是否有一些你遵循的指南或我是否留给自己的设备?
这里可以找到一些基本规则.而更多的扩展规则可以在这里找到.这些是Microsoft框架设计人员的官方指南.
至于你的例子,应该简单地调用变量quantity
.
在这种情况下,我认为最好将其命名为primaryAddressLine或firstAddressLine.这就是为什么 - 作为前缀的rtxt无用地告诉你类型.Intellisense将帮助您处理类型,并且不受对实际对象类型所做的更改的影响.首先调用它AddressAddress使它远离在变量名末尾使用1,2,3 ......的(差)约定,以表明由于某种原因你需要更多的而不是集合.
将它命名为它所代表的内容/它的解释或使用方式不是为了它的数据类型,在命名时它不会缩写,如果你不需要.
在为名称注册指引是最好的起点.但是和其他生活领域一样,一旦你了解规则,就会开始知道打破它们的合理性.
我从来没有使用旧的匈牙利命名法调用的东西strFirstName
,intCount
等; 但我还是用它控制:txtFirstName
,btnVerifyData
,等的原因包括:
我不太可能改变控件的类型
如果我确实更改了控件的类型,我将不得不更改很多东西,而不仅仅是名称,所以更改名称也没什么大不了的
使用Intellisense更容易找到它们.
另外,我很可能对页面或表单上的许多TextBox或ComboBox做同样的事情,而我不太可能对页面或表单上引用的所有int或字符串做些什么.因此,能够快速找到所有带有txt
前缀的TextBox有助于它.
不过,还有其他人坚决反对匈牙利人,即使在这种情况下也是如此,我相信他们有理由.无论您的个人风格如何,您都可能会发现自己在一个风格迥异的团队中工作.在这种情况下,只做他们做的事情; 它非常非常非常值得提出问题.我唯一一次这样做是因为他们的风格导致了很多错误,但是在我的头脑中,我无法想到导致这种情况的案例.