Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Naming conventions “的命名约定”;食品数量“;变量_Naming Conventions - Fatal编程技术网

Naming conventions “的命名约定”;食品数量“;变量

Naming conventions “的命名约定”;食品数量“;变量,naming-conventions,Naming Conventions,假设我需要在一个变量中存储foo对象的数量 我不是一个以英语为母语的人,我总是想知道这个变量最好的名字是什么 foo_numnum_foo否_foofoo_no?还是别的什么 全名应该是number\u of_foos,但有点冗长 你最喜欢的是什么?为什么?因为变量存储了foo对象的数量,fooCount得到我的投票。我会选择fooCount我倾向于使用fooCount或类似的变量。fooCount如果变量不是常量,如果是常量,fooCount:DLinux内核使用“nr_-foo”,这比“no

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

我不是一个以英语为母语的人,我总是想知道这个变量最好的名字是什么

foo_num
<代码>num_foo<代码>否_foo<代码>foo_no?还是别的什么

全名应该是
number\u of_foos
,但有点冗长


你最喜欢的是什么?为什么?

因为变量存储了foo对象的数量,
fooCount
得到我的投票。

我会选择
fooCount
我倾向于使用fooCount或类似的变量。

fooCount
如果变量不是常量,如果是常量,
fooCount
:D

Linux内核使用“nr_-foo”,这比“no_-foo”(看起来是否定的)要好。我自己倾向于使用“fooCount”或“fooCnt”,但有时也使用“numFoo”。我不知道为什么我会在“fooCount”和“numFoo”之间摇摆不定。我想这取决于我的心情。但是你,你应该始终如一(我也应该如此)

就像大家说的那样,大部分是
footcount
。有时更适合使用
foos
,通常是在您实际上没有foo列表,或者它们不是单独的对象时(例如
;对于比萨饼,您可以吃
,等等)


只有在不可能混淆的情况下,才使用foos。显然,在这种情况下,你永远不会有foos列表。

在英语中,“number”和“count”都可以用作名词或动词,但更常见的情况是“number”用作名词,“count”用作动词。所以你可以说“foo的数量”或“num\u foo”听起来比“foo count”或“foo\u count”更熟悉。对于我来说,当引用一个不经常变化的量时,这听起来当然更自然。“count”这个词,即使用作名词,对我来说也意味着一个随着时间推移而上升的值

Ruby和Python都有.count方法,这些方法演示了将单词用作动词而不是名词。在Ruby中,您可能会说:

foos.count   # Count how many elements in the array 'foos'
不过,这会返回一个表示foo数量的值,如果您只引用了一个名为“foo_count”的变量,那么这正是您所期望的。因此,在某些方面,“foos.count”和“foo_count”看起来很相似,这是一件好事

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

num_string
看看这个变量名,你能猜出它代表什么吗?它是表示字符串数量的整数,还是表示数字的字符串

所以我只是想大声说出来,并在我看到他们的时候给出他们各自的优点和缺点。我出现在这个老页面上的原因是,我发现自己在使用这两个页面时不一致,并且认为我会看到其他人在做什么


顺便说一句,我不喜欢“nr_-foo”,因为“nr”对我来说根本不意味着或听起来像“number”这个词。听起来像“ner”,或者可能代表“未评级”或“国家橄榄球”。:-)我甚至不敢说fooCnt听起来像什么。只是没有。

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

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

我选择
count
并通过
Foo.count
调用它,如果您确实需要将它存储为您创建的类的属性,即
Foo


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

我用来表示某物的数量:somethingCountsomething\u count


我用一些东西的序列号:somethinginindexsomething\u index),因为“number”这个词模棱两可(它意味着数量和序列号)

我个人会根据语言标准选择
total\u foos
totalFoos
。该值最好是一个最终总数,而不仅仅是一个运行计数

说“我总共有3个食物”比说“我有3个食物”更有意义


总的来说,这没什么大不了的,但我总是用
total
over
count

+1用于添加理由(尽管措辞相当不雅)。@delnan-通常我会详细说明,但我是在手机上回答。如果你有时使用
foos
表示“对象的数量”,有时则表示“我认为收集
foo
对象可能会导致混淆。
slices
听起来像是
slice
对象的数组,它们是
pizza
对象的一部分。我会使用
sliceCount
,或者
nr_slices
,或者其他什么(我还没有决定:d)是的,只有在没有机会condusion@rjack-“数字”是模糊的,“计数”是具体的。例如,数字可以是一个ID。[我认为麦康奈尔在《代码完整》一书中指出了这一点,但我身上没有副本。]“number”的缩写更容易理解(Linux内核编写者除外)包括“nFoo”和“numFoo”。@Andy Thomas Cramer-不太让人迷惑的IMHO:信用卡号码听起来像“信用卡号码”,而
nr\u信用卡
听起来像“信用卡数量”,比
credit\u cards\u count
短。听起来很自然(但我可能错了,因为我不是以英语为母语的人)。@rjack不管怎么说,这都是信用卡计数,因为当名词是复合词的一部分时,你通常不会对它们进行复数。Linux的“nr”和你的答案就是一个很好的例子,说明“numb”这个词是多么令人困惑