命名约定“数量的foos”variables
假设我需要将foo对象的数量存储在一个variables中。
我不是一个以英语为母语的人,我总是想知道这个变种的最好名字是什么(=简短而且马上清楚)。
foo_num
? num_foo
? no_foo
? foo_no
? 或者是其他东西?
全名应该是number_of_foos
,但是有点冗长。
你最喜欢什么?为什么?
我为fooCount而去,因为它很直接,我认为“count”这个词是最短和最好的,而不是“数量”等等。
如果你需要将它存储到最终和静态(如果你不需要改变它/如果它是一个常量),我去FOO_COUNT。 (所有常量的上限!)
如果你真的必须把它作为你创build的类的一个属性来存储,那么我就去count并且用Foo.count来调用它。
可读性为你和你的团队!
由于variables存储了foo对象的数量, fooCount
获取我的投票。
在英语中,“数字”和“数字”这两个词既可以作为名词也可以作为动词,但可能更常见的是将“数字”用作名词,将“数量”用作动词。 所以你可以争辩说'foos'或'num_foo'的数量听起来比'foo count'或'foo_count'更为熟悉。 当引用一个并不经常变化的数量时,我当然听起来更自然。 “count”这个词,即使用作名词,也意味着我的价值随着时间的推移而上升。
Ruby和Python都有.count方法,这些方法演示了用作动词的单词,而不是名词。 在Ruby中你可能会说:
foos.count # Count how many elements in the array 'foos'
尽pipe如此,这还是会返回一个表示foos数量的值,如果您只是引用了一个名为“foo_count”的variables,这正是您所期望的。 所以在某些方面,“foos.count”和“foo_count”看起来相似的事实是很好的。
“数字”在某些情况下可能是模棱两可的,因为存储不代表数量的数字是很常见的。 其他人已经提到了ID和信用卡号码。 这是另一个例子:
num_string
看着这个variables名,你能猜到它代表什么吗? 它是一个表示string数量的整数,还是一个数字的string表示?
所以我只是在大声思考,并且在我看到他们的时候给予他们一些利弊。 我甚至在这个旧的页面上的原因是因为我发现自己使用这两个不一致,并认为我会看到别人正在做什么。
顺便说一下,我不喜欢'nr_foo',因为'nr'实际上并没有提示或听起来像'数字'这个词。 这听起来像'ner',或者也许代表'没有评分'或'国家橄榄球'。 :-)我甚至不敢冒昧地说fooCnt听起来像什么。 就是不行。
fooCount
如果variables不是一个常量, FOO_COUNT
如果是。 :d
Linux内核使用“nr_foo”,这比“no_foo”(看起来像否定)要好。 我自己倾向于使用“fooCount”或“fooCnt”,但也有时使用“numFoo”。 我不确定为什么我在“fooCount”和“numFoo”之间摇摆不定。 猜猜这取决于我的心情。 但你,你应该是一致的(我应该);)
大家都像大家说的那样fooCount
。 有时使用foos
更为合适,通常当你实际上没有foos列表,或者它们不是单独的对象(例如seconds
;对于比萨,你可以有slices
等)
只有在没有混淆的时候才使用foos
– 当在这种情况下显然你永远不会有foos的列表。
我会去fooCount
我倾向于使用fooCount或类似的。
我个人会根据语言标准去找total_foos
或totalFoos
。 它代表更好的价值是最终的总数,而不仅仅是一个计数。
说“我总共有3个foos”而不是“我有3个foos”是更有意义的。
总体而言,这不是一个大问题,但我总是使用total
!
我用一些东西的数量: somethingCount ( something_count )
我使用somethings序列号: somethingIndex ( something_index ),因为“数字”字是不明确的( 这意味着数量和序列号 )