Programarea asincronă a devenit în ultima vreme la fel de dezvoltată ca programarea paralelă clasică, iar în lumea JavaScript, atât în browsere, cât și în Node.js, înțelegerea tehnicilor sale a ocupat un loc central în formarea viziunii dezvoltatorilor. Vă propun un curs complet, cu o explicație a tuturor metodelor larg răspândite de programare asincronă, adaptatoare între ele și dimensiuni auxiliare. În prezent, acesta constă din 23 de lecții, 3 prezentări și 28 de repozitorii cu multe exemple de cod pe GitHub. În total, aproximativ 17 ore de video: .
Explicații pentru schemă
Schema (de mai sus) arată legăturile dintre diferitele modalități de a lucra cu asincronicitatea. Blocurile colorate se referă la programarea asincronă, iar cele alb-negru ilustrează metodele de programare paralelă (semafoare, mutexuri, bariere etc.) și rețelele Petri, care, la fel ca programarea asincronă și modelul actorilor, sunt diferite abordări pentru realizarea calculului paralel (sunt incluse în schemă doar pentru a determina mai precis locul programării asincrone). Modelul actorilor este legat de programarea asincronă deoarece implementarea actorilor fără multithreading are, de asemenea, dreptul la existență și servește la structurarea codului asincron. Liniile punctate leagă evenimentele și coada concurentă de callback-uri, deoarece aceste abstracții se bazează pe callback-uri, dar totuși formează abordări calitativ noi.
Temele lecțiilor
Sub fiecare videoclip există linkuri către repozitorii cu exemple de cod, care sunt analizate în videoclipuri. Am încercat să demonstrez că nu trebuie să reduci totul la o singură abstracție a asincronismului. Nu există o abordare universală pentru asincronism, iar pentru fiecare caz se pot găsi metode care să permită scrierea unui cod mai natural pentru această sarcină specifică. Desigur, acest curs va fi completat, iar eu cer tuturor să propună noi teme și să contribuie la exemplele de cod. Principala sarcină a cursului este de a arăta cum să construiești abstracții ale asincronismului din interior, nu doar să înveți să le folosești. Practic toate abstracțiile nu provin din biblioteci, ci sunt oferite în cea mai simplă implementare și este analizată pas cu pas funcționarea lor.
Numai utilizatorii înregistrați pot participa la sondaj. , vă rugăm.
Care este opinia dvs. despre curs?
Voi urmări tot cursul
Voi urmări selectiv
Îmi ajunge o abordare
Voi contribui la curs
Nu mă interesează asincronismul
8 utilizatori au votat. 1 utilizator s-a abținut.
Sursa: habr.com
