Ben kullanıyorum ECMAScript'i 6 ve ECMAScript 7 zaten benim uygulamalarda (Babel sayesinde) özellikleri - mobil ve web hem.
İlk adım açıkça ECMAScript 6 seviyelerine yönelikti. Pek çok eşzamansız kalıp, sözler (gerçekten ümit verici olan), üreteçler (* sembolünün neden olduğundan emin değilim) vb. Öğrendim. Bunlardan vaatler amacıma oldukça uygun geldi. Ve bunları uygulamalarımda oldukça kullanıyorum.
İşte temel bir vaadi nasıl uyguladığıma dair bir örnek / sözde kod:
var myPromise = new Promise(
function (resolve,reject) {
var x = MyDataStore(myObj);
resolve(x);
});
myPromise.then(
function (x) {
init(x);
});
Zaman geçtikçe ECMAScript 7 özellikleriyle karşılaştım ve bunlardan biri ASYNC
ve AWAIT
anahtar kelimeler / işlevler. Bunlar birlikte büyük harikalar yaratır. Verdiğim bazı sözleri ile değiştirmeye başladım async & await
. Programlama stiline büyük değer katıyor gibi görünüyorlar.
Yine, işte async, await işlevimin nasıl göründüğüne dair bir sözde kod:
async function myAsyncFunction (myObj) {
var x = new MyDataStore(myObj);
return await x.init();
}
var returnVal = await myAsyncFunction(obj);
Sözdizimi hatalarını (varsa) bir kenara bırakırsak, ikisi de aynı şeyi yapıyor benim hissettiğim şey. Sözlerimin çoğunu neredeyse eşzamansız ile değiştirebildim, bekliyorlar.
Sözler benzer bir işi yaparken neden eşzamansız, ihtiyaç duyuluyor?
Eşzamansız, daha büyük bir sorunu çözmeyi mi bekliyor? Yoksa cehennemi geri aramak için farklı bir çözüm müydü?
Daha önce de söylediğim gibi, sözler ve asenkron kullanabiliyorum, aynı sorunu çözmeyi bekliyorum. Eşzamansızın çözülmeyi beklediği belirli bir şey var mı?
Ek Notlar:
React projelerimde ve Node.js modüllerimde yoğun olarak async, beklediğim ve vaatleri kullanıyorum. React özellikle erken bir kuş olmuştur ve birçok ECMAScript 6 ve ECMAScript 7 özelliğini benimsemiştir.