SORU
7 Mart 2012, ÇARŞAMBA


Nasıl düz İngilizce, seçmelerde açıklamak için? Nasıl başka bir işlevin bir işlev çağrıldığında farklıdır?

Nasıl düz İngilizce, seçmelerde açıklamak için? Nasıl arama işlevi, başka bir işlevin bir işlev bazı bağlam almaya çağıran farklıdır? Nasıl güçlerini acemi bir programcı için açıklanabilir?

CEVAP
11 Mart 2012, Pazar


Bu ölü basit tutmak için denemek için gidiyorum. Bir "geri" bir parametre olarak ilk işlevi alır, başka bir işlev tarafından çağrılan bir işlevi vardır. Çoğu zaman, bir "geri" olan bir işlevdirbir şeyolur. Bubir şey""programcı-konuş. bir olay çağrılabilir

Bu senaryo düşünün: birkaç gün içinde bir paket bekliyoruz Paket komşunuz için bir hediye. Paketi alınca bu nedenle, komşular getirdi istiyorsun. Şehir dışında ve eşiniz için talimatları bırakın.

Onlara ev ve komşular için gelsin. Eğer eşiniz gibi aptalca bir bilgisayar, onlar oturup kapıda beklemek için paket kadar geldi (DEĞİL BAŞKA bir ŞEY) ve daha sonra bir kez geldi, onlar getirmek için komşular. Ama daha iyi bir yolu var. Paketi aldıktan SONRA, komşular sona getirmek gerektiğini eşiniz söyle. Daha sonra paket alır KADAR hayat hakkında normalde gidebilirler.

Bizim örneğimizde, paket alma "" ve komşular getiren"". geri arama olay Eşiniz "" sadece . paketi getirmek için talimatları çalışır ^em>ne zamanpaket geldi. Çok daha iyi!

Bu tür düşünme günlük hayatta açıktır, ama bilgisayarlar sağduyu aynı tür yok. Programcılar normalde bir dosyayı yazmak nasıl düşünün:

fileObject = open(file)
# now that we have WAITED for the file to open, we can write to it
fileObject.write("We are writing to the file.")
# now we can continue doing the other, totally unrelated things our program does

Burada, biz bunu yazmadan önce dosyayı açmak için bekliyoruz. "Blok" akışı ve program bağlantı yapmak gerekebilir başka bir şey yapamam. bu Eğer bunu yaparsak ne olur yerine:

# we pass writeToFile (A CALLBACK FUNCTION!) to the open function
fileObject = open(file, writeToFile)
# execution continues flowing -- we don't wait for the file to be opened
# ONCE the file is opened we write to it, but while we wait WE CAN DO OTHER THINGS!

Bazı dillerde ve çerçeveler ile bu yaptığımız ortaya çıktı. Çok havalı! Node.js bu düşünce tarzı ile gerçek bir uygulama için göz atın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hytchme

    hytchme

    9 Mart 2014
  • newreleaseblitz

    newreleasebl

    13 Ocak 2010
  • Watcher3223

    Watcher3223

    15 Kasım 2007