Was ist das explizite Versprechen Bau Antipattern und wie vermeide ich es?

Ich das schreiben von code, der etwas tut, das sieht aus wie:

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() */ |     });
}                                        | }

Jemand sagte mir, dies nennt man die "latente antipattern" oder die "Promise Konstruktor antipattern" bzw.,, was ist schlecht daran, wenn dieser code und warum heißt das eine antipattern?

InformationsquelleAutor der Frage Benjamin Gruenbaum | 2014-05-22

Schreibe einen Kommentar