“foos数量”变量的命名约定

时间:2010-09-18 17:15:34

标签: naming-conventions

假设我需要在变量中存储foo对象的数量。

不是母语为英语的人,我总是想知道该变体的最佳名称(简短且立即清晰)。

foo_numnum_foono_foofoo_no?或其他什么?

全名应该是number_of_foos,但它有点冗长。

你最喜欢什么,为什么?

10 个答案:

答案 0 :(得分:32)

我选择fooCount因为它很简单,我认为“count”这个词是描述它的最短和最好的,而不是“数量”之类的。

如果您需要将其存储为最终和静态(如果您不需要更改/如果它是常量),我会选择FOO_COUNT。 (所有常数的上限!)

如果你真的必须将它存储为你所制作的一个类的属性,那就是Foo.count来计算并调用它。这就是Foo。

为您和您的团队提供可读性!

答案 1 :(得分:23)

由于变量存储了foo对象数量的计数,fooCount得到了我的投票。

答案 2 :(得分:12)

Linux内核使用“nr_foo”,这比“no_foo”更好(看起来像是否定)。我自己倾向于使用“fooCount”或“fooCnt”,但有时也使用“numFoo”。我不确定为什么我在“fooCount”和“numFoo”之间摇摆不定。猜猜这取决于我的心情。但是你,你应该保持一致(我应该这样);)

答案 3 :(得分:11)

在英语中,单词'number'和'count'都可以作为名词或动词,但是将'number'用作名词,'count'作为动词可能更常见。所以你可以说'foos'或'num_foo'听起来比'foo count'或'foo_count'更熟悉。在引用不经常变化的数量时,对我来说当然听起来更自然。 “计数”这个词,即使用作名词,也向我建议一个随时间推移的价值。

Ruby和Python都有.count方法,它们演示了这个词被用作动词,而不是名词。在Ruby中你可能会说:

foos.count   # Count how many elements in the array 'foos'

但是,这会返回一个表示foos数量的值,如果您刚刚引用了一个名为'foo_count'的变量,那么这正是您所期望的。所以在某些方面,'foos.count'和'foo_count'看起来相似的事实很不错。

'Number'在某些情况下可能不明确,因为存储不代表某些数量的数字是很常见的。其他人已经提到了身份证和信用卡号码。这是另一个例子:

num_string

查看该变量名称,您能猜出它代表什么吗?它是一个表示字符串数量的整数,还是一个数字的字符串表示?

所以我真的只是大声思考,并在我看到它们时为每个人提供一些利弊。我甚至在这个旧页面上的原因是因为我发现自己使用这两个不一致,并且认为我会看到其他人在做什么。

顺便说一句,我不喜欢'nr_foo',因为'nr'对我来说真的不建议或听起来像'数字'这个词。这听起来像'ner',或者可能代表'未评级'或'国家橄榄球'。 :-)我甚至不敢冒险说出fooCnt听起来像什么。只是没有。

答案 4 :(得分:8)

fooCount如果变量不是常量,FOO_COUNT(如果是)。 :d

答案 5 :(得分:3)

我个人会选择total_foostotalFoos,具体取决于语言标准。它更好地表示该值是最终总数而不仅仅是运行计数。

说“我有3个总泡沫”而不是“我有3个foos”也更有意义。

总的来说,这并不是一件大事,但我总是使用total而不是count

答案 6 :(得分:2)

大多数fooCount像所有人都说的那样。有时使用foos更合适,通常在您实际上没有foos列表时,或者它们不是单独的对象(例如seconds;对于披萨,您可以{{1}等等。)

只有在没有混淆的情况下才使用slices - 很明显,在这种情况下,你根本就没有foos列表。

答案 7 :(得分:1)

我会去fooCount

答案 8 :(得分:1)

我倾向于使用fooCount或类似的。

答案 9 :(得分:1)

我用的是数量的东西: somethingCount something_count

我用于某些事物的序列号: somethingIndex something_index ),因为“数字”字是不明确的(表示数量和序列编号