Asynkron programmering (fuldt kursus)

Asynkron programmering (fuldt kursus)

Asynkron programmering er for nylig blevet ikke mindre udviklet end klassisk parallel programmering, og i JavaSripts verden, både i browsere og i Node.js, har forståelsen af ​​dens teknikker indtaget et af de centrale steder i udformningen af ​​udviklernes verdensbillede. Jeg gør dig opmærksom på et holistisk og mest komplet kursus med en forklaring på alle de udbredte metoder til asynkron programmering, adaptere mellem dem og hjælpeåbninger. Den består i øjeblikket af 23 forelæsninger, 3 rapporter og 28 repositories med mange kodeeksempler på github. I alt omkring 17 timers video: link til afspilningsliste.

Forklaringer til ordningen

Diagrammet (ovenfor) viser sammenhænge mellem forskellige måder at arbejde med asynkroni på. De farvede blokke refererer til asynkron programmering, og s/h viser parallelle programmeringsmetoder (semaforer, mutexes, barrierer osv.) og Petri-net, der ligesom asynkron programmering og aktørmodellen er forskellige tilgange til implementering af parallel computing (de er angivet i diagrammet kun for mere præcist at bestemme stedet for asynkron programmering). Aktørmodellen er relateret til asynkron programmering, fordi implementering af aktører uden multithreading også har ret til at eksistere og tjener til at strukturere asynkron kode. De stiplede linjer forbinder hændelser og den samtidige kø til tilbagekald, fordi disse abstraktioner er baseret på tilbagekald, men stadig danner kvalitativt nye tilgange.

Forelæsningsemner

1. Asynkron programmering (oversigt)
2. Timere, timeouts og EventEmitter
3. Asynkron programmering ved hjælp af tilbagekald
4. Ikke-blokerende asynkron iteration
5. Asynkron med async.js-biblioteket
6. Asynkroni på løfter
7. Asynkrone funktioner og fejlhåndtering
8. Asynkrone adaptere: promisify, callbackify, asyncify
9. Asynkrone dataindsamlere
10. Ubehandlede fejl i løfter
11. Problemet med asynkron stacktrace
12. Generatorer og asynkrone generatorer
13. Iteratorer og asynkrone iteratorer
14. Annullering af asynkrone operationer
15. Asynkron funktionssammensætning
16. Afventer let og let
17. Samtidig asynkron kø
18. Mønster åben konstruktør (Revealing Constructor)
19. Fremtid: Asynkroni på statsløse futures
20. Udskudt: Asynkroni på stateful differentials
21. Skuespillermodel
22. Mønsterobservatør (observatør + observerbar)
23. Asynkroni i RxJS og hændelsesstrømme

Under hver video er der links til repositories med kodeeksempler, der er forklaret i videoen. Jeg forsøgte at vise, at der ikke er behov for at reducere alt til én abstraktion af asynkroni. Der er ingen universel tilgang til asynkroni, og for hvert tilfælde kan du vælge de metoder, der giver dig mulighed for at skrive kode mere naturligt til denne specifikke opgave. Dette kursus vil naturligvis blive suppleret, og jeg beder alle om at foreslå nye emner og bidrage med kodeeksempler. Hovedmålet med kurset er at vise, hvordan man bygger asynkronabstraktioner indefra, og ikke kun lære at bruge dem. Næsten alle abstraktioner er ikke taget fra biblioteker, men er givet i deres enkleste implementering og deres arbejde analyseres trin for trin.

Kun registrerede brugere kan deltage i undersøgelsen. Log ind, Vær venlig.

Hvad er din mening om kurset?

  • Jeg vil se hele kurset

  • Jeg vil se selektivt

  • Én tilgang er nok for mig

  • Jeg vil bidrage til kurset

  • Jeg er ikke interesseret i asynkroni

8 brugere stemte. 1 bruger undlod at stemme.

Kilde: www.habr.com

Tilføj en kommentar