19

Я был здесь около 4 месяцев и несколько раз видел, что люди используют foo но я не знаю, что это значит. Я хотел бы, чтобы другие объяснили мне об этой переменной ...

Почему это важно? Как мне это использовать? Когда я использую это? Как я мог использовать это?

Я читал в википедии кое-что о метасинтаксической переменной, но я не понимаю, что это значит.

8 ответов8

26

RFC 3092: этимология "Foo". Это показывает, как Foo изначально должен был соединяться с bar для создания foobar (AKA Fubar). Эти термины лучше всего использовать для псевдо или поддельного кодирования. Они также полезны в примерах, чтобы позволить каждому достаточно легко следить за переменными. Вот и ссылка на Википедию!

7

Когда кто-то хочет привести пример кода, foo обычно используется как способ сказать «поместите фактическое имя переменной / функции / класса, которую вы будете использовать здесь».

7

Из вашей связанной статьи в Википедии:

"метасинтаксическая переменная" является синонимом "бессмысленного слова"

Это просто бессмысленное слово, когда вам нужно назвать переменную или функцию, но фактическое имя не имеет значения. Действительно используется только для демонстрации фрагментов кода. НИКОГДА не используйте его в реальном коде.

4

Это компьютерный эквивалент собаки по кличке "Пятно", кошки по кличке "Кот", человека по имени "Джон Смит" (не в обиду многим там, чье имя это на самом деле), или даже рыбы по имени "Ванда" ,

Если вы хотите использовать общее имя в "computerspeak", вы часто будете использовать foo , bar или baz . Использование foo обычно указывает на переменную / функцию / что угодно, чье имя не имеет значения и может быть изменено. Поэтому, если я отвечу на вопрос о SU, используя foo качестве имени моей переменной, вы поймете, что можете свободно изменять foo на то, что вам нравится.

Это не является, как принято считать, аббревиатурой «эфофиниозных эвофилов».

4

Короче говоря, «foo» и «bar» - это просто заполнители для имеющейся у вас информации, такой как имя пользователя, пароль, переменная и т.д.

3

Метасинтаксические переменные - это переменные, значения которых понимаются как части синтаксиса (возможно, имена других переменных, которые являются синтаксисом). Они появляются в формулах, которые работают с синтаксисом, как и метасинтаксис.

Например, рассмотрим S V O (объект субъектного глагола), выражение, указывающее основной порядок слов в некотором человеческом языке. Эти три буквы являются метасинтаксическими переменными. Каждый обозначает некоторый фрагмент синтаксиса. Предметом предложения может быть сложная именная фраза и т.д. Более того, эти буквы выбраны таким образом, который является значимым в области языковых проблем: S обозначает субъект и так далее.

foo и bar могут считаться метасинтаксическими в том смысле, что они служат заполнителями для реальных имен, которые должны быть изобретены пользователем. Эти конкретные имена имеют смысл в проблемной области написания примеров кода в компьютерной документации, где они мгновенно узнаваемы, как старые друзья. Так что, как это ни парадоксально, foo выражает: «Я знаменит тем, что не имел никакого значения. Где бы вы ни увидели меня, замените меня чем-то, что есть!"и это его значение.

Понятно также, что в тех случаях, когда появляются и foo и bar , пользователь должен заменять отдельные символы, а если foo появляется более одного раза в одном и том же примере, все вхождения должны последовательно заменяться одним и тем же идентификатором.

foo и bar эффективны до тех пор, пока они не конфликтуют с чем-либо на языке компьютера, таким как встроенные команды, ключевые слова или имена важных библиотечных функций или переменных. Если это произойдет, уровни синтаксиса и метасинтаксиса станут запутанными. Если вы разрабатываете новый язык, вам следует избегать введения foo и bar качестве значимых идентификаторов на этом языке.

Слова foo и bar имеют этимологию, но эта этимология не связана с их значением в компьютерной документации.

2

Это на самом деле используется только для примера, на самом деле ... вместо переменных, которые вы хотите использовать ... но если вы хотите узнать больше ... здесь ..:

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.

.. Классный вопрос .. И это очень важно для людей, проникающих во весь информационный мир, потому что это пример, который есть везде, и если вы ничего не знаете о чем-то, вы можете ошибиться, пока не поймете, что foo - пример. ,

У вас есть разные альтернативы ... но это часть одного и того же происхождения истории! ...

Вот RFC ! так что проверь. Очень полезно для этого.

Существует также объяснение для bar (это, как правило, прослеживается до армейского сленга эры Второй мировой войны FUBAR ...)

Быстрый поиск в Google может решить быстрый вопрос, посмотрите эту статью в Википедии:

.. Происхождение терминов точно не известно, и для их выявления было выдвинуто несколько анекдотических теорий. Первое известное использование терминов в печати появилось в издании MIT "Tech Engineering News" 1965 года. Foobar, возможно, произошел от военной аббревиатуры FUBAR и приобрел популярность, потому что он произносится так же, как ...

Это интересно, и с некоторой информацией вы могли бы использовать, чтобы освободить.

Надеюсь, поможет!

1

Foo - это имя переменной, используемой для любой переменной, когда само имя не имеет значения. Если вы помните математические проблемы со словами, у них получится: у мистера Смита есть 10 долларов, а у мистера Джонса - 20 долларов. Если мистер Джонс даст мистеру Смиту 5 долларов, сколько у мистера Смита? Смит и Джонс и просто имена. Foo похожа, это просто имя для переменной, потому что вам нужно имя для примера, чтобы иметь смысл.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .