ChatGPT解决这个技术问题 Extra ChatGPT

'foo' 的真正含义是什么? [关闭]

关闭。这个问题是基于意见的。它目前不接受答案。 1年前关闭。锁定。这个问题及其答案被锁定,因为这个问题离题但具有历史意义。它目前不接受新的答案或交互。

我希望这是一个编程问题,就像在任何编程教程中一样,您最终会在代码示例中遇到“foo”。 (是的,对吧?)

'foo' 的真正含义是什么?

如果它没有任何意义,那么它是什么时候开始使用的?

上一条评论中链接的问题显然已被删除。它仍然可以在已删除问题的非官方存档中找到:stackoverflow.hewgill.com/questions/262/271.html。另请参阅此相关已删除问题:stackoverflow.hewgill.com/questions/163/229.html

C
Community

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

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

非常普遍地用作绝对任何东西的样本名称,尤其是。程序和文件(尤其是暂存文件)。

首先是语法示例中使用的元语法变量的标准列表(bar、baz、qux、quux、corge、grault、garply、waldo、fred、plugh、xyzzy、thud)。 [行话]


哦,这太棒了。他们有 Foo 的 RFC。
Mark Tomlin,看看那个 RFC 中的日期。
什么是 RFC ;-) ?
@Pentarex 什么是 RTFM ;-)?
RFC - “请求评论文件由 Steve Crocker 在 1969 年发明,用于帮助记录有关 ARPANET 发展的非官方注释。它们已成为 Internet 规范、协议、程序和事件的官方记录”。来源:http://www.livinginternet.com
C
Community

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

SA中有good uses of foo

我还看到当程序员想不出一个有意义的名称时使用 foo(例如,作为 tmp 的替代品),但我认为这是对 foo 的滥用。


C
CodesInChaos

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

bar 和 baz 经常组合在一起构成 foobar、barbaz 和 foobaz 等词。 www.nationmaster.com/encyclopedia/Metasyntactic-variable

CML 中的主要概念,通常直接映射到 XMLElements(稍后讨论)。 wwmm.ch.cam.ac.uk/blogs/cml/

围场中牧草总量的测量,以每公顷牧草干物质公斤数表示(kg DM/ha) www.lifetimewool.com.au/glossary.aspx

前方观察官。一名炮兵军官留在步兵营和坦克营,在前线设立观察哨,从那里观察敌人的阵地,并将目标的坐标通过无线电发送到后方的炮台。 members.fortunecity.com/lniven/definition.htm

是第一个常用的元句法变量。它有时与 bar 结合来制作 foobar。这表明 foo 可能起源于第二次世界大战的俚语 fubar,作为 fucked/fouled up 的首字母缩写词,尽管行话文件提供了一个很好的案例...explain-guide.info/meaning/Metasyntactic-变量.html

Foo 是计算机科学中大量使用的元句法变量,用于抽象地表示概念,可用于表示 ... en.wikipedia.org/wiki/FOo

Foo 是 Obert Skye 的 Leven Thumps 系列中的梦想世界(不是)。虽然它有许多原始居民,但它现在的大多数居民都来自现实,并被称为尼特。 ... en.wikipedia.org/wiki/Foo(地点)

也富'。用 T 先生口音表示傻瓜(愚蠢的人) en.wiktionary.org/wiki/foo

资源:google


很好的答案,但可能值得一个指向行话文件条目的链接:catb.org/jargon/html/F/foo.html
Google 结果不是答案
Google 结果不是答案<<我不明白。那么答案是什么?如果你想到一个?没有保证?或者我应该在这里删除大量网站的实际链接?我认为stackoverflow必须在一个地方有东西,而不仅仅是指向其他网站的链接,这就是我将所有这些发布到一个线程中的方式。
嘿,如果您要发布所有与编程无关的答案,您为什么要省略二战飞行员给他们看到但无法识别但假定是敌方战斗机的不明飞行物的名称“foo-fighter”?
B
Blorgbeard

这是一个metasyntactic variable


D
Deathstalker

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


G
GateKiller

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

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


u
user unknown

法语 fou 的声音,(如:amour fou)[crazy] 用英语写成,会是 foo,不是吗。否则 furchtbar -> foobar -> foo, bar -> barfoo -> barfuß(赤脚)。只是你。没有牙齿的脚。

我同意所有提到它的人的意思:没有什么有趣的,只是一些东西,通常需要完成一个语句/表达式。


我喜欢与其他语言的比较及其不同的含义:-D
J
Jimmy B

在我的同事中,“foo”一词的含义(或者更准确地说是使用)一直是作为一个占位符来代表一个名字的例子。示例包括但不限于 yourVariableName、yourObjectName 或 yourColumnName。

今天,出于几个原因,我避免使用“foo”并更喜欢使用这种类型的命名替换。

在我早期的日子里,我最初发现在任何示例中使用“foo”作为放置来表示某些东西是令人困惑的。我想要一个工作示例,而不是 foobar。

您的结果可能会有所不同,但我总是 100%,每次,从未失败,得到更多关于使用“foo”的实际变量的含义的后续问题。


k
khebbie

在我看来,每个程序员都有他或她自己的“词”,每次你在编程时需要一个任意词时都会使用这些“词”。对一些人来说,这是一首儿歌的第一句话,对另一些人来说是名字,而对另一些人来说则是完全不同的东西。现在对于程序员社区来说,也有这些“词”,这些词是“foo”和“bar”。这样做的用途是,如果您必须公开交流有关编程的信息,您不必说您会使用任意词,您只需写“foo”或“bar”,每个程序员都知道这只是任意词。


如果“每个人”都知道这一点,为什么会有这么多人问“foo”、“bar”和“foobar”的含义? Prakash 不是第一个提出问题的人。 IMO foo、bar 和 foobar 不直观,如 a、b、c、tmp、X、Y、Z、var 和 func,这就是为什么我认为很多 pe
嗯..只是我,还是长评论的渲染被破坏了?无论如何,剩下的就是“......为什么我认为很多人会觉得他们分心。”
是的,您的评论超出了 300 个字符的限制;)但是谢谢!
我可能只是在开发者社区中纠缠得太深了;-)
我发现(并且发现)它们让人分心。尤其是在第一次尝试破译 python 时,我认为它们比它们更有意义。也许是一个函数,或者是语法的一部分。尽管我对 **kwargs 之类的东西也有同样的问题。我本能地试图记住这样的东西。到了写下来的地步。直到有人告诉我“你使用什么短语并不重要,只要你有 ** ”。当你意识到它代表什么时,至少“kwargs”是有意义的。像“foo”这样的东西只是令人困惑的“神秘”。他们觉得自己是为了开玩笑而开玩笑。