Qual é o significado de “foo”? [fechadas]

19

Estou aqui há 4 meses e várias vezes vi que as pessoas usam foo , mas não sei o que isso significa. Eu gostaria que outros me explicassem sobre essa variável ...

Por que isso é importante? Como eu uso isso? Quando eu uso? Como eu poderia usá-lo?

Eu li sobre wikipedia algo sobre a variável Metasyntactic, mas não entendo o que significa.

    
por poz2k4444 23.01.2013 / 22:05

8 respostas

26

RFC 3092: A Etimologia de "Foo" Isso mostra de uma forma bem definida como Foo era originalmente para ser emparelhado com bar para criar foobar (AKA Fubar). Esses termos são melhor usados para codificação pseudo ou falsa. Eles também são úteis em exemplos para permitir que todos sigam facilmente as variáveis. Aqui está o Link da Wikipédia também!

    
por 23.01.2013 / 22:08
7

Quando alguém quer dar um exemplo de código, foo é normalmente usado como uma maneira de dizer "coloque o nome real da variável / função / classe que você usará aqui".

    
por 23.01.2013 / 22:09
7

Do seu artigo da Wikipédia vinculado:

"metasyntactic variable" is synonymous with "meaningless word"

É apenas uma palavra sem sentido quando você precisa nomear uma variável ou função, mas o nome real não importa. Realmente usado apenas para demonstração de trechos de código. NUNCA use em código real.

    
por 23.01.2013 / 22:10
4

Em suma, 'foo' e 'bar' são simplesmente espaços reservados para informações que você tem, como nome de usuário, senha, variável, etc.

    
por 23.01.2013 / 22:21
4

É o computador equivalente a um cachorro chamado "Spot", um gato chamado "Puss", um homem chamado "John Smith" (sem ofensa para as multidões lá fora cujo nome realmente é), ou mesmo um peixe chamado "Vanda".

Quando você quiser usar um nome genérico em "computerspeak", geralmente usará foo , bar ou baz . O uso de foo geralmente indica uma variável / função / qualquer nome cujo nome não seja importante e possa ser alterado. Então, se eu responder uma pergunta sobre SU usando foo como o nome da minha variável, você saberá que pode alterar livremente foo para qualquer outra coisa que você sentir.

Não é , como é comumente assumido, uma abreviação de Fie ofuscando os enófilos.

    
por 23.01.2013 / 22:13
3

As variáveis metassintáticas são variáveis cujos valores são entendidos como partes da sintaxe (possivelmente, os nomes de outras variáveis, que são sintaxe). Eles aparecem em fórmulas que operam na sintaxe e, portanto, são meta-sintaxe.

Por exemplo, considere S V O (objeto verbo sujeito), uma expressão que indica a ordem básica das palavras de alguma linguagem humana. Essas três letras são variáveis meta-sintáticas. Cada um denota alguma parte da sintaxe. Um sujeito de frase pode ser uma frase substantiva complexa e assim por diante. Além disso, essas letras são escolhidas de forma significativa no domínio do problema lingüístico: S significa assunto e assim por diante.

foo e bar podem ser considerados metassintáticos, no sentido de servirem como espaços reservados para nomes reais que serão inventados pelo usuário. Esses nomes específicos são significativos no domínio do problema de escrever exemplos de código na documentação do computador, onde são instantaneamente reconhecíveis, como velhos amigos. Então, paradoxalmente, foo expressa "Eu sou famoso por não ter nenhum significado. Onde quer que você me veja, substitua-me por algo que tenha um!", E esse é o seu significado.

Também é entendido que quando foo e bar aparecem, o usuário deve substituir símbolos distintos e onde foo aparece mais de uma vez no mesmo exemplo, todas as ocorrências devem ser consistentemente substituídas pelo mesmo identificador .

foo e bar são eficazes, desde que não colidam com nada na linguagem do computador, como comandos internos, palavras-chave ou os nomes de funções ou variáveis significativas da biblioteca. Se isso acontecer, os níveis de sintaxe e meta-sintaxe se tornarão confusos. Se você estiver criando um novo idioma, convém evitar a introdução de foo e bar como identificadores significativos nesse idioma.

As palavras foo e bar têm uma etimologia, mas a etimologia não está conectada ao seu significado na documentação de computação.

    
por 24.01.2013 / 00:37
2

Ele é praticamente usado apenas para exemplos, na verdade ... ao invés das variáveis que você quer usar ... mas se você quiser saber mais ... aqui ...:

FOO :

  Forward Observation Observer.

  FOO Of Oberlin.  An organization whose name is a recursive
  acronym.  Motto: The FOO, the Proud, the FOO.  See
  <http://cs.oberlin.edu/students/jmankoff/FOO/home.html>.

  File Open for Output.

.. Legal pergunta .. E é muito importante para as pessoas entrarem em todo o mundo da informática, buecuse é um exemplo que está em toda parte e se você não sabe nada de nada, você pode cair em um erro até você obtém que foo é um exemplo ...

Você tem alternativas diferentes ... mas faz parte da mesma origem da história! ...

Aqui está a RFC ! então confira. Muito útil para isso.

Há também a explicação para bar (geralmente é atribuída ao acrônimo de gíria do Exército da Segunda Guerra Mundial FUBAR ...)

Uma pesquisa rápida no google pode resolver uma pergunta rápida, veja este artigo da wikipedia:

.. The origins of the terms are not known with certainty, and several anecdotal theories have been advanced to identify them. The first known use of the terms in print appear in a 1965 edition of MIT's "Tech Engineering News." Foobar may have derived from the military acronym FUBAR and gained popularity because it is pronounced the same...

É interessante e com algumas informações que você pode usar para liberar.

Espero que ajude!

    
por 23.01.2013 / 22:19
1

Foo é um nome de variável usado para qualquer tipo de variável quando o próprio nome não é importante. Se você se lembrar de problemas com palavras matemáticas, eles iriam: O Sr. Smith tem US $ 10 e o Sr. Jones US $ 20, se o Sr. Jones dá ao Sr. Smith US $ 5 quanto o Sr. Smith tem? Smith e Jones e apenas nomes. Foo é semelhante, é apenas um nome para uma variável porque você precisa de um nome para o exemplo para fazer sentido.

    
por 24.01.2013 / 02:05