Programarea asincronă sau programarea bazată pe evenimente este un nume comun pentru un stil de programare, în care rezultatul unei funcții nu vine imediat după apel, dar mai târziu.
Scrieți programe în care rezultatul apelului unei funcții nu este cunoscut când - mult mai greu decât de obicei. Apeluri nestecate, manipularea erorilor, controlul a ceea ce se întâmplă - lucrurile se complică.
Prin urmare, oamenii au inventat câteva metode utile care facilitează viața asincronă.
Toți cei care au folosit AJAX sunt familiarizați cu programarea asincronă. Atunci când executăm un anumit proces (de exemplu, XMLHTTPRequest) și setăm funcția de apel invers pentru a procesa rezultatul.
La prima vedere, este foarte simplu, dar numai până când dorim să adăugăm un apel unei noi funcții după apelul invers. a face manipularea convenabilă a erorilor și a excepțiilor și, de asemenea, - să asigure adăugarea de noi funcții la sfârșitul lanțului de apeluri asincrone.
O modalitate este de a adăuga callback-uri la parametrii tuturor funcțiilor. Altă este să folosiți un obiect separat pentru a gestiona asincronia. Să o numim Amânată.
obiect amânat încapsulează o secvență de manipulare pentru rezultatul nu există încă, ceea ce simplifică foarte mult de complexe AJAX-aplicații. Acesta oferă diverse cadre (Dojo Toolkit, MochiKit) și bibliotecă individuală (jsDeferred, Promises etc).