'foo'到底意味着什么?

时间:2008-09-10 08:21:02

标签: language-agnostic coding-style

我希望这有资格作为一个编程问题,就像在任何编程教程中一样,你最终会在代码示例中遇到'foo'。 (是的,对吗?)

'foo'究竟意味着什么?

如果它的意思是没有,那么什么时候开始使用呢?

9 个答案:

答案 0 :(得分:131)

请参阅:RFC 3092: Etymology of "Foo", D. Eastlake 3rd et al.

为简洁起见,仅引用该RFC的相关定义:

  
      
  1. 一般用作绝对任何东西的样本名称,尤其是     程序和文件(尤其是临时文件)。

  2.   
  3. 首先在标准的metasyntactic变量列表中使用     语法示例(bar,baz,qux,quux,corge,grault,garply,     waldo,fred,plugh,xyzzy,thud)。 [行话]

  4.   

答案 1 :(得分:42)

foo用作占位符名称,通常在示例代码中表示被命名的对象或名称的选择不是示例的关键部分。如果需要多个此类名称,则foo后面会barbaz,甚至bundy。维基百科称这些名称为Metasyntactic Variables。 Python程序员应该使用spameggsham,而不是foo等。

SA中有good uses of foo

我还看到foo在程序员无法想到有意义的名称时使用tmp(比如说​​foo的替代),但我认为这是对{{1}的误用}}

答案 2 :(得分:19)

“Foo”的定义有很多含义:

资源:google

答案 3 :(得分:12)

答案 4 :(得分:8)

我认为这意味着没有任何意义。维基说:

“Foo通常与metasyntactic变量bar和foobar一起使用。”

答案 5 :(得分:8)

foo =文件或对象。它用于代替对象变量或文件名。

答案 6 :(得分:3)

在我看来,每个程序员都有自己的“单词”,每次编程时都需要任意单词。 对于某些人来说,这是儿歌的第一句话,对于其他人的名字,对于其他人来说,这是完全不同的东西。 对于程序员社区来说,也有这些“单词”,这些单词是'foo'和'bar'。 使用这个是如果你必须公开谈论编程,你不必说你会使用仲裁词,你只需要写'foo'或'bar',每个程序员都知道这只是任意的话。

答案 7 :(得分:3)

用英语写的法国人的声音(如:amour fou)[疯狂]将是foo,不是吗。其他furchtbar - > foob​​ar - > foo,bar - > barfoo - > barfuß(赤脚)。只是四。一只脚没有牙齿。

我同意所有人的观点,他们提到这意味着:没有什么有趣的,只是通常需要完成一个陈述/表达。

答案 8 :(得分:3)

在我的同事中,术语" foo"的含义(或者更准确地说 - 使用)已作为占位符代表名称的示例。示例包括但不限于 yourVariableName yourObjectName yourColumnName

今天,我避免使用" foo"并且更喜欢使用这种类型的命名替换,原因有两个。

  • 在我早些时候,我最初发现使用" foo"作为任何一个例子中的展示位置来表示某些东西,因为它会让人感到困惑。我想要一个有效的例子,而不是foobar。
  • 您的结果可能会有所不同,但我总是,100%,每次,从未失败,得到更多关于实际变量含义的后续问题,其中" foo"用了。