it-swarm-tr.com

Kaynak kodu örneklerinde "foo" ve "bar" kullanımının geçmişi nedir?

Neden birçok kod örneği, özellikle öğreticiler, "Foo" ve "Bar" adlarını bu kadar sık ​​kullanıyor? Neredeyse bir standart.

Örneğin:

void foo(char* bar) {
  printf("%s", bar);
}
60
user15453

Foo ve çubuğu ABD Ordusu İkinci Dünya Savaşı kısaltması FUBAR'dan geliyor, "F msgstr "Tüm Tanımaların Ötesinde". Bu terimlerin tüm ailesi Kuzey Afrika ve Sicilya kampanyalarında yaygın olarak kullanılmaya başlandı (1942-43). Rick Atkinson'ın mükemmel Savaş Günü: Sicilya ve İtalya'daki Savaş, 1943-1944 bunların bir listesini verir. Örneğin, bir JANFU, 11 Temmuz 1943'teki işgal filosunun Husky Operasyon23 Ordu Hava Kuvvetleri C-47 nakliyesi için vurulduğu olay) gibi bir "Ortak Ordu Donanması F Yukarı" sahil başını güçlendirmek için paraşütçüler taşımak.

Güncelleme: Vikipedi, Atkinson tarafından listelenen orijinal İkinci Dünya Savaşı'nı içeren ilgili kısaltmaların list ifadesine sahiptir.

Herhangi bir programcı değişkenleri adlandırmak için foo ve çubuğunu kullanma motivasyonunu anlayacaktır. . Kesinlikle en başından beri C/UNIX kültürünün bir parçası oldular ve @Walter Mitty'nin belirttiği gibi, bunu önceden yaptı.

Güncelleme (10/5/2009): İşte Atkinson'ın açıklaması:

Yaygın "sivilliği" onları askeri gayrete karşı temkinli yaptı. Sicilya'ya giden bir Donanma Rezervi yardımcısı John Mason Brown, "Biz pelerin ve kılıç dalgası ile dolu romantik değildik." "Son savaş bunun için çok yakındı." Askeri yaşam ironik duyarlılıklarını ve şüpheciliklerini ateşledi. Askerin beklentilerini düşüren tek bir kaba kısaltma - SNAFU, "durum normal, hepsi berbat" - GI sinizminin bir kelime dağarcığına dönüşmüştü: SUSFU (durum değişmedi, hala berbat); FUMTU (normalden daha fazla becerdin); JANFU (ortak Ordu-Donanma fuck-up); JAAFU (ortak Anglo-Amerikan fuck-up); FUAFUP (becerdin ve uygun becerdin); ve FUBAR (tüm tanınmaların ötesine geçti) [Atkinson, s. 36].

Güncelleme (23/11/2011): @ Hugo'nun askeri olmayan öncüllerin fantastik listesi değeri var.

65
Jim Ferrans

Bence fubarın fonetik açıklaması.

Şunun anlamı:

  • F * cked
  • Yukarı
  • Ötesinde
  • Herşey
  • Onarım
59
FlySwat

Yeni Hacker'ın Sözlüğü bu konuda çok iyi bir girişe sahiptir - ve bu tür şeyler için Wikipedia'dan daha iyi bir kaynak olduğunu düşünüyorum:

metasintaktik değişken /n./

Örneklerde kullanılan ve tartışılan her şeyi veya tartışılan bir sınıf sınıfının herhangi bir rastgele üyesini temsil ettiği anlaşılan bir isim. Word foo kanonik örnektir. Karışıklıklardan kaçınmak için, bilgisayar korsanları asla (iyi, neredeyse hiç) `` foo '' veya onun gibi diğer kelimeleri hiçbir şey için kalıcı isim olarak kullanmazlar. Dosya adlarında, yaygın bir kural, metasyntaktik değişken adıyla başlayan dosya adlarının herhangi bir zamanda silinebilecek bir karalama dosyası olmasıdır.

Bir dereceye kadar, kişinin tercih ettiği metasintaktik değişkenlerin listesi kültürel bir imzadır. Hem seri olarak (ilgili değişken veya nesne grupları için kullanılır) hem de tekton olarak oluşurlar. İşte birkaç yaygın imza:

foo, bar, baz, quux, quuux, quuuux ...:
MIT/Stanford kullanımı, artık her yerde bulundu (bu Lexicon'un ilk sürümlerine teşekkürler!). MIT (ancak Stanford'da değil)), baz 1970'lerde ve 80'lerde bir süre kullanım dışı bırakıldı.

bazola, ztesch:
Stanford ('70'lerin ortalarından itibaren).

foo, bar, thud, homurdanma:
Bu seri CMU'da popülerdi. CMU ile ilişkili diğer değişkenler gorp'tur.

foo, bar, fum:
Bu serinin XEROX PARC'de yaygın olduğu bildiriliyor.

fred, barney:
Fred girişine bakınız. Bunlar İngilizler olma eğilimindedir.

corge, grault, flarp:
Rutgers Üniversitesi'nde ve GOSMACS bilgisayar korsanları arasında popüler.

zxc, spqr, wombat:
Cambridge Üniversitesi (İngiltere).

shme
Berkeley, GeoWorks, Ingres./Shme/bir kısa/e/ile telaffuz edilir.

snork
Brown Üniversitesi, 1970'lerin başı.

foo, bar, zot
Helsinki Teknoloji Üniversitesi, Finlandiya.

blarg
Yeni Zelanda.

toto, titi, tata, tutu
Fransa.

pippo, plüton, paperinos
İtalya. Pippo/pee'po/ve Paperino/e-per-ee'-no /, Goofy ve Donald Duck'ın İtalyan isimleridir.

aap, not, mies
Hollanda. Bunlar, bir çocuğun Hollandaca bir yazım denetiminde yazmayı öğrenmek için kullandığı ilk kelimelerdir.

Tüm bunlardan sadece 'foo' ve 'bar' evrenseldir (ve neredeyse bazdır). Foobar ve `` foobaz '' bileşikleri de çok geniş bir para birimine sahiptir.

Bazı jargon terimleri metasyntaktik isimler olarak da kullanılır; örneğin barf ve mumble. Büyük Britanya ve İngiliz Milletler Topluluğu'nda bulunan çok sayıda metasyntaktik değişken hakkında tartışma için Commonwealth Hackish'e bakınız.

41
ColinYounger

Wikipedia bu Metasintaktik Değişken tanımını verir :

Bilgisayar biliminde, programcılar, tartışılan konuyu veya tartışılan bir sınıf sınıfının keyfi bir üyesini belirtmek için yaygın olarak kullanılan bir yer tutucu adını veya takma adı terimini tanımlamak için metasyntaktik değişkenleri kullanır. Metasintaktik bir değişkenin kullanılması, bir programcının mantıksal olarak adlandırılmış bir değişken oluşturmasını engellemede yardımcı olur; bu, bir algoritmanın örneklerini oluştururken veya öğretirken genellikle yararlıdır. Word foo asıl örnektir.
"Metasintaktik değişken" terimi esas olarak resmi olmayan literatürde bulunur. Bazen çok değişkenli eşanlamlı olarak da kullanılır.
Dilin kurallarını ihlal etmeyen herhangi bir sembol veya Kelime, metasintaktik bir değişken olarak kullanılabilir, ancak saçma kelimeler yaygın olarak kullanılır. Aynı kavram şematik değişken gibi terimlerle ifade edildiği diğer alanlarda da kullanılır (bkz mantıksal form ).
Matematiksel analoji ile: Metasyntaktik değişken, tıpkı cebir harflerinde sayılar için değişken olarak kullanıldığı gibi, diğer kelimeler için değişken olan bir kelimedir.

Makale ayrıca farklı programlama dillerinde bu değişkenlerin ortak örneklerini vermektedir:

[~ # ~] c [# ~ ~]
Aşağıdaki C programlama dili örneğinde foo ve değişken ad çubuğu işlevlerinin her ikisi de metasintaktik değişkenlerdir. // ile başlayan satırlar yorumdur.

// The function named foo
int foo(void)
{
   // Declare the variable bar and set the value to 1
   int bar = 1;

   return bar;
}

Python

Spam, jambon ve yumurta, Python programlama dilinde kullanılan temel metasyntaktik değişkenlerdir. [5] Bu, ünlü komedi taslağı olan Spam, Monty Python'un Aşağıdaki örnekte spam, jambon ve yumurta metasyntaktik değişkenlerdir ve # ile başlayan satırlar yorumdur.

# Define a function named spam
def spam():

    # define the variable ham
    ham = "Hello World!"

    #define the variable eggs
    eggs = 1

    return

Yakut

Aşağıdaki örnekte baz, foo ve bar metasyntaktik değişkenlerdir ve # ile başlayan satırlar yorumdur.

# Declare the variable foo and set equal to 1
foo = 1

# Declare the variable bar and set equal to 2
bar = 2

# Declare the method (function) named baz, which prints the text 'Hello world'
def baz
   puts 'Hello world'
end
25
Brian

İşte wikipedia'nun cevabı:

Foobar, foo, bar ve baz terimleri, bilgisayar programlamasında veya bilgisayarla ilgili belgelerde kullanılan yaygın yer tutucu adlarıdır (metasyntaktik değişkenler olarak da adlandırılır). Genellikle bilinmeyen değerlerin amacının anlaşıldığı bir senaryo tanımlanırken, bilinmeyen değerleri temsil etmek için kullanılırlar, ancak kesin değerleri keyfi ve önemsizdir. Terimler, veriler, değişkenler, fonksiyonlar ve komutlar dahil olmak üzere karmaşık bir sistemin veya fikrin herhangi bir bölümünü temsil etmek için kullanılabilir. Kelimelerin kendileri bu kullanımda hiçbir anlamı yoktur ve sadece mantıksal temsillerdir, tıpkı cebirde x ve y harfleri gibi. Foobar genellikle tek başına kullanılır; foo, bar ve baz genellikle birden çok varlığa ihtiyaç duyulduğunda bu sırada kullanılır.

Foo, İngilizceye neologizm olarak girmiştir ve birçoğu tarafından metasintaktik değişkenin kanonik örneği olarak kabul edilmektedir. [Alıntı gerekli] Bilgisayar programlama örneklerinde (bazen "sadece bir kez" olarak ifade edilir) ve sözde kodda yaygın olarak kullanılmaktadır. Eric S. Raymond bunu çamur ve rüşvetle birlikte "önemli bir hackerizm" olarak nitelendirdi. [1]

http://en.wikipedia.org/wiki/Foo

Ve RFC 3092'den:

'Bar' ile bağlantılı olarak kullanıldığında, genellikle II. Jargon Dosyasının [JARGON] ilk versiyonları bu değişikliği savaş sonrası bir bowdlerizasyon olarak yorumladı, ancak şimdi FUBAR'ın kendisinin belki de Alman 'furchtbar' dan (korkunç) etkilenebileceği bir 'foo' türevi olduğu görülüyor - 'foobar' aslında orijinal form olmuştur.

Görünüşe göre, 'foo' kelimesinin kendisi çizgi romanlarda ve çizgi filmlerde hemen savaş öncesi bir tarihe sahipti. Robert Clampett'in yönettiği "Daffy Doc" adlı 1938 Warner Brothers karikatüründe, Daffy Duck'ın çok erken bir sürümü "SILENCE IS FOO!" ... (snip)

http://www.faqs.org/rfcs/rfc3092.html

19
Daniel A. White

tl; Dr.

  • Metasintaktik değişkenler olarak "Foo" ve "bar" MIT ve DEC tarafından popülerleştirildi), ilk referanslar 1964'ten itibaren LISP ve PDP-1 ve Project MAC üzerinde çalışmaktadır.

  • Bu insanların çoğu, 1959'da teknoloji çevrelerinde (ve 1958'de bir varyant) "foo" nun ilk belgelenmiş kullanımını bulduğumuz MIT Tech Model Railroad Club'daydı.

  • Hem "foo" hem de "bar" (ve hatta "baz") popüler kültürde, özellikle de birçok TMRC üyesi tarafından okunacak olan Smokey Stover ve Pogo çizgi romanlarından iyi biliniyordu.

  • Ayrıca, askeri FUBAR'ın popülerliklerine katkıda bulunması muhtemel görünüyor.


Saçma bir sözcük olarak yalnız "foo" nun kullanımı, askeri FUBAR gibi 20. yüzyılın başlarında popüler kültürde oldukça iyi belgelenmiştir. (Bazı arka plan okumaları: FOLDOC FOLDOC Jargon DosyasıJargon DosyasıWikipediaRFC3092 )


Tamam, bazı referanslar bulalım.

BASIN DUR! Bu cevabı gönderdikten sonra, 14 Ocak Cuma günü "foo" hakkındaki bu mükemmel makaleyi keşfettim 1938 The Tech ("MIT'in en eski ve en büyük gazetesi ve web'de yayınlanan ilk gazete"), Cilt LVII. 57, Fiyat Üç Kuruş:

Foo-ism hakkında

Şezlong, bu Foo-ism işinin yanlış yönlendirilmiş taraftarları tarafından çok ileri taşındığını düşünüyor ve bu vesile ile istismarına karşı tavır alıyor. Eski bir foo gibi bir foo olmayabilir ve biz de varız, ama her neyse, bir foo ve parası bir parti. (Beyazlatıcılardan ses - "Aptal olma!")

Elbette bir küfür olarak, "foo!" şu anda maruz kaldığı aşırı kullanımın erken (ve ne yazık ki karanlık) bir unutulmaya düşmesine neden olabileceğinden korkmamıza rağmen, dilimizde kesin ve muhtemelen yeri doldurulamaz bir konuma sahiptir. Ne yazık ki, Word'ün uygun kullanımı aşağıdaki gibi mutlu olaylara neden olabilir.

Profesör Slater tarafından Oda 6-120'de yapılan 8.50 Termodinamik dersiydi. Karatahtanın ön yüzünü kaplayan profesör, kaldırma mekanizmasını çalıştıran tutamağı ayarladı ve bu sırada tartışmaya devam etmek için sınıfa döndü. Ön tahta yavaşça, görkemli bir şekilde kendini kaldırdı, arkasındaki tahtayı ortaya çıkardı ve o tahtaya "FOO" yazan sembolleri büyük yaz!

Teknoloji gazetesi , bir yıl önce, Editöre Mektup, Eylül 1937 :

Tren istasyona ulaştığında, neofitler, genellikle Foo olarak adlandırılan Phi Omicron Omicron'un görkeminin öyküleri ile o kadar dolu ki, kolay avlar.

...

Phi Omicron Omicron'un Büyük ve Evrensel Kardeşliği'ne ilk dört oğlumu kaybetmeyi umursamıyorum, ancak beşinci oğlum, bebeğim en azından önceden uyarılmalı.

Umarım sizindir,

Beşinci Kızgın Anne.

Ve Teknik Aralık ayında 1938 :

Genel düşünce eğilimi en iyi oy pusulalarının sonunda yapılan açıklamalardan yorumlanabilir. Bir oylamada, "Yaptığım şeyin Pulver'ın işlerinden hiçbiri olduğunu düşünmüyorum", bir diğeri ise sadece "Foo" klibini ekledi.


Teknik çevrelerde belgelenen ilk "foo" muhtemelen 1959 's TMRC Dili Sözlüğü :

FOO: kutsal hece (FOO MANI PADME HUM); sadece İlahi ile iletişim kurmak için ilham alındığında konuşulmalıdır. İlk yükümlülüğümüz Foo Sayaçlarını çevirmek.

Bunlar FOLDOC 'da açıklanmaktadır. Sözlüğün derleyicisi Pete Samson 2005'te şöyle dedi:

Bu Word'ün TMRC'de kullanılması oraya gelişimi önler. Bir foo sayacının rastgele yanıp sönen ışıkları olabilir veya belirsiz bir girişi olan gerçek bir sayaç olabilir.

1996'dan Jargon Dosyası 4.0. :

Bu Lexicon'un önceki sürümleri 'baz' ı bir Stanford bar bozulması olarak türetmiştir. Bununla birlikte, Pete Samson (TMRC Lexicon'un derleyicisi) 1958'de TMRC'ye katıldığında zaten geçerli olduğunu bildiriyor. "Pogo'dan geldi. veya 'Rowrbazzle!' Kulüp düzeninin Rowrfolk ve Bassex'in (efsanevi) New England ilçelerini (Rowrbazzle'ın (Norfolk/Suffolk/Middlesex/Essex) ile karıştığı modellendiği söylenir. ”

TMRC sözlüğünden bir yıl önce, 1958 's MIT Voo Doo Gazetesi ("MIT Dekanlar ofisi ”) (PDF) Foocom'dan, elektrik mühendisliği öğrencisi John Banzhaf'ın" Murphy ve Finagle Kanunları "nda bahsediyor:

Ortak bir Foocom ve Anarcom hibesi altında daha fazla araştırma yapılması, yasaları kucaklayan ve evrensel olarak uygulanabilir olacak şekilde genişletti: Bir şey ters gidebilirse, olacak!

Ayrıca 1964 's MIT Voo Doo (PDF) TMRC kullanımını referans alır:

Evet! Anlık bir başarı ve kar müşterisi olmak istiyorum. Bana bir derece gönder: ...

  • Foo Sayıcılar

  • Foo Jung


Ancak bu sorunun kod örnekleri ile ilgili olduğunu hatırlayalım, bu yüzden kodda yayınlanan "foo", "bar" ve "foobar" ı bulalım.

Yani, Jargon Dosyası 4.4.7 "foobar" der:

Muhtemelen başlangıçta Digital Equipment Corporation (DEC) tarafından 1960'larda ve 1970'lerin başında DECsystem kılavuzlarıyla yayılmıştır; orada teyit edilen manzaralar 1972'ye kadar gider.

Bulabildiğim ilk yayınlanmış referans Şubat 1964'ten , ancak Haziran 1963'te yazılmıştır, Programlama Dili LISP: Çalışması ve Uygulamaları Information International, Inc. tarafından yazılmıştır, ancak Timothy P. Hart ve Michael Levin dahil:

Böylece, "FOO" kendisi için bir isim olduğundan, "COMITRIN" hem "FOO" hem de "(FOO)" işlevlerini aynı şekilde ele alacaktır.

Ayrıca diğer metasintaktik değişkenleri içerir: FOO CROCK GLITCH/POOT TOOR/ON YOU/SNAP ÇATLAK POP/X Y Z

Bunun, Ocak ayında MIT'in Project MAC'inden bir sonraki "foo" referansıyla aynı olacağını düşünüyorum 1964 'ın AIM-064 veya LISP Egzersizleri Timothy P. Hart ve Michael Levin:

araba [((FOO. CROCK). GLITCH)]

CHI/BOSTON NEW YORK/SPINACH BUTTER STEAK/FOO CROCK GLITCH/POOT TOOP/TOOT TOOT/ISTHISATRIVIALEXCERCISE/PLOOP FLOT TOP/SNAP ÇATLAK POP/TEK İKİ ÜÇ)/UÇAK ALT İĞNELİ

Hem "foo" hem de "bar" için bulabildiğim en eski referans, Haziran ayında MIT'in Project MAC'inden 1966 AIM-098 veya PDP-6 LISP Peter Samson'dan başkası tarafından:

EXPLODE, PRIN1 gibi, eğik çizgiler ekler, bu nedenle (EXPLODE (QUOTE FOO/BAR)) PRIN1'ler (F O O ///B A R) veya PRINC'ler (F O O/B A R) olarak eklenir.


Biraz daha yeniden hesaplama.

@ Walter Mitty 2008 yılında bu sitede hatırladı:

Foo Bar ile ilgili jargon dosyasını ikinci olarak. En azından 1963'e ve MIT'de Bina 26'nın ikinci katında bulunan PDP-1 seri numarası 2'ye kadar izleyebilirim. Foo ve Foo Bar orada ve 1964'ten sonra MAC projesinde PDP-6 odasında kullanıldı.

John V. Everett 1996'da hatırlıyor:

1966'da DEC'ye katıldığımda, foobar zaten yaygın bir dosya adı olarak kullanılıyordu. Ben her zaman MIT'den DEC'ye geçiş terimini kabul etsem de, fubarın foobar olduğuna inanıyorum çünkü PDP-6 altı karakter ismini destekledi. O günlerde DEC'de çok sayıda MIT tür vardı, bazıları 7090/7094 CTSS ile çalıştı. 709x 36 bitlik bir makine olduğundan, foobar ortak olarak kullanılmış olabilir dosya adı var.

Foo ve bar da yaygın olarak dosya uzantısı olarak kullanıldı. Günün metin editörleri bir girdi dosyası üzerinde çalıştığından ve bir çıktı dosyası ürettiğinden, bir .foo dosyasından bir .bar dosyasına tekrar düzenlemek yaygındı.

TECO ile düzenleme yaparken tamponu doldurmak için foo kullanılması da yaygındı. Bir disk bloğunu tam olarak dolduracak metin dizesi IFOO $ HXA127GA $$ idi. Çalıştığım PDP-6/10 programcılarının neredeyse tamamı aynı komut dizesini kullandı.

Daniel P. B. Smith 1998'de:

Dick Gruen, yurt odasında, B-pilin olağan montajı, dirençler, kapasitörler ve "foo sayacı" olarak adlandırdığı NE-2 neon tüplerinde bir cihaza sahipti. Bu 1964 dolaylarında olurdu.

Robert Schuldenfrei 1996'da:

Örnek değişken adları olarak FOO ve BAR kullanımı en azından 1964 ve IBM 7070'e kadar uzanır. Bu da daha eski olabilir, ancak ilk gördüğüm yer burası. Bu Assembler'daydı. FORTRAN tam sayı eşdeğeri ne olur? IFOO ve IBAR?

Paul M. Wexelblat 1992'de:

En eski PDP-1 Assembler, semboller için iki karakter kullandı (18 bit makine) programcılar sorunları gidermek için her zaman yama alanı olarak birkaç kelime bıraktı. (Yama alanına atla, yeni kod yap, geri atla) Bu alan geleneksel olarak FU olarak adlandırıldı: Fxxx Ups'u düzelttiğiniz yer olan Fxxx Up için duruyordu. Konuşulduğunda, FU boşluk olarak bilinirdi. Daha Sonra Birleştiriciler (örn. MIDAS üç karakter etiketine izin verdi, bu yüzden FU FOO oldu ve TÜM PDP-1 programcılarının size bunun FOO alanı olduğunu söyleyebilirim.

Bruce B. Reynolds 1996'da:

FOO (FU) BAR'ın IBM tarafında, BAR tarafının Temel Adres Kaydı olarak kullanılması; 1970'lerin ortalarında CICS programcıları çeşitli xxxBAR'ları endişelendirmek zorundaydı ... Bence bunlardan biri FRACTBAR'dı ...

İşte 1955'ten itibaren düz bir IBM "BAR" .


Diğer erken referanslar:


Fof barına RFC3092 ve başka yerlerde önerildiği gibi "ters foo sinyali" diye bir referans bulamadım.

İşte daha önceki F00'lerden bazıları, ancak bunların tesadüf/yanlış pozitif olduğunu düşünüyorum:

19
Hugo

"foo" ve "bar" gibi kelimeler kullanmak, bildiğiniz terimlere dayanarak neler kavrayabileceğinize değil, konsepte odaklanmanızı sağlar. Örneğin:

public abstract class Animal
{
    public abstract void speak();
}

public class Cat 
    extends Animal
{
    public abstract void speak()
    {
        System.out.println("meow");
    }
}

public class Dog
    extends Animal
{
    public abstract void speak()
    {
        System.out.println("bark");
    }
}

Yukarıdaki kod, gerçek dünya şeyleri hakkındaki bilginize geri dönmenizi sağlar.

Önemli kısmın yapılmakta olan şey olmadığı (örneğin miyavlama ya da ağaç kabuğu gibi) bir kavramını açıklamaya çalışıyorsanız, bunun nasıl yapıldığına ilişkin olarak, tanıdık olduğunuz parçaları kaldırın:

public abstract class Foo
{
    public abstract void star();
}

public class Bar
    extends Foo
{
    public abstract void star()
    {
        System.out.println("A");
    }
}

public class Car
    extends Foo
{
    public abstract void star()
    {
        System.out.println("b");
    }
}

Şimdi gerçekten olanlara odaklanmalısınız, artık ne olacağını tahmin edemezsiniz.

Yani, kısa versiyon, bu foo, bar ve benzerleri, içeriğin gerçekten önemli olmadığı, ancak fikrin önemli olduğu kavramları vurgulamak için kullanılır.

13
TofuBeer

http://en.wikipedia.org/wiki/Foobar

Teknolojide, Word muhtemelen 1960'larda ve 1970'lerin başında Digital Equipment Corporation tarafından sistem kılavuzlarıyla yayıldı. Başka bir olasılık, foobar'ın ters bir foo sinyali olarak elektronikten evrimleşmesidir. Bunun nedeni, dijital bir sinyalin aktif düşük olması (negatif veya sıfır voltaj koşulunun "1" 'i temsil etmesi) durumunda, genellikle sinyal etiketinin üzerine yatay bir çubuk yerleştirilmesidir. Jargon Dosyası, foo'nun muhtemelen FUBAR'dan önce geldiği bir vaka yapar

7
Cetra

Jargon Dosyalarından http://www.catb.org/jargon/html/F/foo.html

foo:/foo /

  1. interj. Tiksinme terimi.
  2. [çok yaygın] Kesinlikle her şey için örnek adı olarak kullanılır, özellikle. programlar ve dosyalar (özellikle çizik dosyaları).
  3. İlk olarak sözdizimi örneklerinde kullanılan metasyntaktik değişkenlerin standart listesinde. Ayrıca bkz. Bar, baz, qux, quux, garply, waldo, fred, plugh, xyzzy, thud.

bar:/bar /, n.

  1. [çok yaygın] İkinci metasintaktik değişken, foo sonrası ve baz öncesi. “Diyelim ki iki fonksiyonumuz var: FOO ve BAR. FOO BAR'ı çağırıyor .... ”
  2. Genellikle foobar üretmek için foo'ya eklenir.
7
jop

http://en.wikipedia.org/wiki/Foo :

Terimlerin kökenleri kesin olarak bilinmemektedir ve bunları tanımlamak için birkaç fıkra teorisi geliştirilmiştir. Foobar, kaba konuşma kısaltması FUBAR'dan türetilmiş olabilir veya aynı telaffuz edilmesinden dolayı popülerlik kazanmış olabilir.

5
RichieHindle

Foo Bar ile ilgili jargon dosyasını ikinci olarak.

En azından 1963'e ve MIT'de Bina 26'nın ikinci katında bulunan PDP-1 seri numarası 2'ye kadar izleyebilirim. Foo ve Foo Bar orada ve 1964'ten sonra MAC projesinde PDP-6 odasında kullanıldı.

4
Walter Mitty

Bildiğim kadarıyla foo, "fubar" ın değiştirilmesi anlamına gelen foobardan geliyor, " F *** ed u p b göz a ll r tanıma. "

Sonra yine başka kaynaklar olabilir.

http://en.wikipedia.org/wiki/Foo

2
Chris

Foo ve Bar (aksi takdirde FUBAR ... F *** ed Up All Recognition'ın ötesinde), sınıflar, özellikler, yöntem adları vb. Şeyler için standart jenerik adlar olarak kullanılmıştır.

Temel olarak, kodun nasıl çalıştığından uzak durabilecek kadar fazla bilgi olmadan kodunuzu iletmektir (yani, kodu görmek ve yeniden adlandırırsak ne yapacağını anlamak için işlevinizin AddUser olarak adlandırılmasına gerek yoktur. (Foo) ().

0
TheTXI