SORU
22 Mayıs 2014, PERŞEMBE


Açık söz inşaat antipattern nedir ve nasıl atlatabilirim?

Görünüşe göre bu işi yapan kod yazıyordum:

function getStuffDone(param) {           | function getStuffDone(param) {
    var d = Q.defer(); /* or $q.defer */ |     return new Promise(function(resolve, reject) {
    // or = new $.Deferred() etc.        |     // using a promise constructor
    myPromiseFn(param 1)                 |         myPromiseFn(param 1)
    .then(function(val) { /* or .done */ |         .then(function(val) {
        d.resolve(val);                  |             resolve(val);
    }).catch(function(err) { /* .fail */ |         }).catch(function(err) {
        d.reject(err);                   |             reject(err);
    });                                  |         });
    return d.promise; /* or promise() */ |     });
}                                        | }

Birileri bu denir " söylediertelenmiş antipattern"veya"Promise antipattern yapıcı", bu kod hakkında kötü olan ne sırasıyla ve bu yüzden antipattern denir?

CEVAP
22 Mayıs 2014, PERŞEMBE


deferred antipattern (now explicit-construction anti-pattern) Esailija tarafından icat anti-kalıp sözler yeni insanlar, kendim yaptım ilk sözler kullanıldığında bir ortak. Yukarıdaki kod ile sorun aslında söz zinciri yararlanmak için başarısız olmasıdır.

Sözler .then zincir ve sözler doğrudan iade edebilirsiniz. getStuffDone kodunuzu şu şekilde yazılabilir:

function getStuffDone(param){
    return myPromiseFn(param 1); // much nicer, right?
}

Sözler hakkında asenkron kod daha okunabilir ve senkron kod gibi davranan aslında saklamadan yapıyor. Sözler bir kez işlem değeri, bir soyutlama temsil eder, bir programlama dilinde bir deyim veya ifade kavramı soyut.

Sadece converting an API to promises ve bunu otomatik olarak yapamaz veya toplama fonksiyonları yazarken bu şekilde daha kolay ifade edilmesini ertelenmiş nesneleri kullanmalısınız.

Esailija Alıntı:

Bu en yaygın anti-pattern. Kolay sözler gerçekten anlamıyorsun bu ne zaman girer ve olay yayıcılar veya geri arama programı övmek gibi düşün onları. Hadi özetleyelim: sözler zaman uyumsuz kod düz girinti ve bir özel kanal gibi zaman uyumlu kod, kayıp özellikleri çoğunluğunu yapma konusunda.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Film Riot

    Film Riot

    16 NİSAN 2006
  • Rooster Teeth

    Rooster Teet

    11 Temmuz 2006
  • XxMinayaxX1

    XxMinayaxX1

    9 Mayıs 2012