Quelle est la signification de «foo»? [fermé]


19

Je suis ici depuis environ 4 mois et plusieurs fois j'ai vu que les gens utilisent foomais je ne sais pas ce que cela signifie. J'aimerais que d'autres m'expliquent cette variable ...

Pourquoi c'est important? Comment est-ce que je l'utilise? Quand dois-je l'utiliser? Comment pourrais-je l'utiliser?

J'ai lu sur wikipedia quelque chose sur la variable métasyntaxique, mais je ne comprends pas ce que cela signifie.


6
Je ne pense pas que vous puissiez faire mieux que "un nom d'espace réservé ou un terme d'alias couramment utilisé pour désigner une chose arbitraire, ou un membre arbitraire d'une classe de choses en discussion". C'est comme "ceci" ou "cela".
David Schwartz

Ce genre de question appartient probablement à Stackoverflow. De plus, il n'est pas spécifiquement lié à Linux, ni à aucun autre système d'exploitation.
Mark Allen

8
Avez-vous pas google votre question exacte ? Le deuxième résultat est exactement votre réponse.
enderland

2
@ poz2k4444: J'obtiens la première partie, il n'y aurait aucun sens à avoir ces questions sur ce site, s'il n'y avait aucune utilité à la plus grande communauté. Cependant, j'ai du mal à comprendre comment ce sujet peut être sur le sujet ici concernant la FAQ. fooest un terme strictement utilisé par les programmeurs et dans le code, et il est difficile à associer aux logiciels et au matériel informatique du point de vue de l'utilisateur.
TFM

2
Il existe de nombreux doublons de cette question, et c'est vraiment hors sujet ici. Voir: Que signifie «foo»? , Que signifie vraiment "foo"? , Qu'est-ce que foo? qu'est-ce que foo signifie? , Quelle est l'histoire de l'utilisation de «foo» et «bar» dans les exemples de code source? , Foobar - Wikipedia - il n'y a pas grand intérêt à dupliquer celui-ci une fois de plus en le migrant ailleurs, désolé.
slhck

Réponses:


26

RFC 3092: L'étymologie de "Foo" Cela montre de manière très détaillée comment Foo devait à l'origine être associé à la barre pour créer une foobar (AKA Fubar). Ces termes sont mieux utilisés pour le pseudo ou faux codage. Ils sont également utiles dans des exemples pour permettre à tout le monde de suivre les variables assez facilement. Voici également le lien Wikipedia !


1
Google est votre ami
Ryan M

J'ai essayé de le chercher sur Google, mais je n'ai pas comment ... +1 pour le RFC
poz2k4444

1
C'est très bien, heureusement, les gens semblent être beaucoup plus détendus sur ce site que certains des autres sites de pile.
Ryan M

1
Ouais!! Si vous expliquez plus votre réponse, je choisirai la vôtre pour la référence RFC ...
poz2k4444

Je viens de l'éditer, donc on verra si le mien fait la coupe! (doigts croisés!)
Ryan M

7

Lorsque quelqu'un veut donner un exemple de code, fooest généralement utilisé comme un moyen de dire "placez le nom réel de la variable / fonction / classe que vous utiliserez ici".


7

De votre article Wikipedia lié:

"variable métasyntaxique" est synonyme de "mot sans signification"

C'est juste un mot absurde lorsque vous devez nommer une variable ou une fonction, mais le nom réel n'a pas d'importance. Vraiment uniquement utilisé pour la démonstration d'extraits de code. NE JAMAIS l'utiliser dans du vrai code.


Les noms choisis importent presque toujours dans l'utilisation réelle. foosignifie souvent "vous devez choisir un nom ici, et cela pourrait avoir de l'importance, et dans d'autres endroits où foo apparaît dans le même exemple, vous devez utiliser le même nom."
Kaz

4

En bref, 'foo' et 'bar' sont simplement des espaces réservés pour les informations que vous avez, comme un nom d'utilisateur, un mot de passe, une variable, etc.


4

C'est l'ordinateur équivalent à un chien nommé "Spot", un chat nommé "Puss", un homme appelé "John Smith" (sans offenser les multitudes là-bas dont c'est vraiment le nom), ou même un poisson appelé "Wanda" .

Lorsque vous souhaitez utiliser un nom générique dans "computerspeak", vous utiliserez souvent l'un des foo, barou baz. L'utilisation de fooindique généralement une variable / fonction / tout ce dont le nom n'est pas important et peut être modifié. Donc, si je réponds à une question sur SU en utilisant le foonom de ma variable, vous saurez que vous pouvez librement changer fooce que vous voulez.

Ce n'est pas , comme on le suppose généralement, une abréviation de Fie Obfuscating Oenophiles.


3

Les variables métasyntaxiques sont des variables dont les valeurs sont comprises comme des morceaux de syntaxe (éventuellement, les noms d'autres variables, qui sont la syntaxe). Ils apparaissent dans des formules qui fonctionnent sur la syntaxe, tout comme la méta-syntaxe.

Par exemple, considérons S V O(objet verbe sujet), une expression indiquant l'ordre des mots de base d'un langage humain. Ces trois lettres sont des variables métasyntaxiques. Chacun dénote un morceau de syntaxe. Un sujet de phrase peut être une phrase substantielle complexe, etc. De plus, ces lettres sont choisies d'une manière significative dans le domaine du problème linguistique: Ssynonyme de sujet, etc.

fooet barpeuvent être considérés comme métasyntaxiques dans le sens où ils servent de supports pour des noms réels qui doivent être inventés par l'utilisateur. Ces noms particuliers sont significatifs dans le domaine problématique de l'écriture d'exemples de code dans la documentation informatique, où ils sont instantanément reconnaissables, comme de vieux amis. Donc, paradoxalement, fooexprime "Je suis célèbre pour n'avoir aucun sens. Où que vous me voyiez, remplacez-moi par quelque chose qui en a un!", Et c'est sa signification.

Il est également entendu que là où les deux fooet barapparaissent, l'utilisateur doit substituer des symboles distincts, et où fooapparaît plus d'une fois dans le même exemple, toutes les occurrences doivent être systématiquement remplacées par le même identifiant.

fooet barsont efficaces tant qu'ils n'entrent pas en conflit avec quoi que ce soit dans le langage informatique, comme les commandes intégrées, les mots-clés ou les noms des fonctions ou variables de bibliothèque importantes. Si cela se produit, les niveaux de syntaxe et de méta-syntaxe deviennent confus. Si vous concevez une nouvelle langue, il vous appartient d'éviter d'introduire fooet barcomme identifiants significatifs dans cette langue.

Les mots foo et bar ont une étymologie, mais cette étymologie n'est pas liée à leur signification dans la documentation informatique.


Belle explication en anglais simple. :) +1
John Siu

2

Il est pratiquement utilisé juste pour des exemples, vraiment ... au lieu des variables que vous souhaitez utiliser ... mais si vous voulez en savoir plus ... ici ..:

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.

.. Cool question .. Et c'est très important pour les gens qui pénètrent dans tout le monde informatique, car c'est un exemple qui est partout et si vous ne savez rien de rien, vous pouvez tomber dans une erreur jusqu'à ce que vous obteniez cela fooest un exemple ...

Vous avez différentes alternatives ... mais cela fait partie de la même origine de l'histoire! ...

Voici le RFC ! alors vérifiez-le. Très utile pour ça.

Il y a aussi l'explication bar(elle est généralement attribuée à l'argot de l'Armée de l'époque de la Seconde Guerre mondiale, FUBAR ...)

Une recherche rapide sur Google peut résoudre une question rapide, consultez cet article wikipedia:

.. L'origine des termes n'est pas connue avec certitude, et plusieurs théories anecdotiques ont été avancées pour les identifier. La première utilisation connue des termes imprimés apparaît dans une édition de 1965 des «Tech Engineering News» du MIT. Foobar peut avoir dérivé de l'acronyme militaire FUBAR et gagné en popularité car il est prononcé de la même manière ...

C'est intéressant et avec quelques informations que vous pourriez utiliser pour relâcher.

J'espère que cela aide!


1

Foo est un nom de variable utilisé pour tout type de variable lorsque le nom lui-même n'est pas important. Si vous vous souvenez de problèmes de mots mathématiques, ils iraient: M. Smith a 10 $ et M. Jones a 20 $, Si M. Jones donne à M. Smith 5 $ combien M. Smith a-t-il? Smith et Jones et juste des noms. Foo est similaire, c'est juste un nom pour une variable parce que vous avez besoin d'un nom pour que l'exemple ait du sens.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.