Asünkroonne programmeerimine (täielik kursus)

Asünkroonne programmeerimine (täielik kursus)

Asünkroonne programmeerimine ei ole viimasel ajal muutunud vähem arenenud kui klassikaline paralleelprogrammeerimine ning JavaSripti maailmas on nii brauserites kui ka Node.js-is selle tehnikate mõistmine võtnud arendajate maailmapildi kujundamisel ühe keskse koha. Juhin teie tähelepanu terviklikule ja kõige täielikumale kursusele koos kõigi laialt levinud asünkroonse programmeerimise meetodite, nendevaheliste adapterite ja abiavade selgitustega. Praegu koosneb see 23 loengust, 3 aruandest ja 28 hoidlast koos paljude koodinäidetega githubis. Kokku umbes 17 tundi videot: link esitusloendile.

Kava selgitus

Diagramm (ülal) näitab seoseid erinevate asünkroonsusega töötamise viiside vahel. Värvilised plokid viitavad asünkroonsele programmeerimisele ja mustvalgelt paralleelprogrammeerimise meetodid (semaforid, mutexid, barjäärid jne) ja Petri võrgud, mis sarnaselt asünkroonse programmeerimise ja aktormudeliga on erinevad lähenemised paralleelarvutuse rakendamisele (need on antud diagrammil ainult asünkroonse programmeerimise koha täpsemaks määramiseks). Näitlejamudel on seotud asünkroonse programmeerimisega, kuna ka ilma mitmelõimeta näitlejate realiseerimisel on õigus eksisteerida ja see aitab struktureerida asünkroonset koodi. Punktiirjooned seovad sündmused ja samaaegse järjekorra tagasihelistamisega, kuna need abstraktsioonid põhinevad tagasihelistustel, kuid moodustavad siiski kvalitatiivselt uusi lähenemisviise.

Loengute teemad

1. Asünkroonne programmeerimine (ülevaade)
2. Taimerid, ajalõpud ja EventEmitter
3. Asünkroonne programmeerimine, kasutades tagasihelistusi
4. Mitteblokeeriv asünkroonne iteratsioon
5. Asünkroonsus async.js teegiga
6. Asünkroonsus lubadustel
7. Asünkroonsed funktsioonid ja vigade käsitlemine
8. Asünkroonsed adapterid: lubamine, tagasikutsumine, asünkroonimine
9. Asünkroonsed andmekogujad
10. Käsitlemata vead lubadustes
11. Asünkroonse virnajälje probleem
12. Generaatorid ja asünkroongeneraatorid
13. Iteraatorid ja asünkroonsed iteraatorid
14. Asünkroonsete toimingute tühistamine
15. Asünkroonse funktsiooni koosseis
16. Ootuskõlblik ja kerge
17. Samaaegne asünkroonne järjekord
18. Mustri avatud konstruktor (ilmutav konstruktor)
19. Tulevik: kodakondsuseta futuuride asünkroonia
20. Edasilükatud: asünkroonsus olekupõhistel diferentsiaalidel
21. Näitleja mudel
22. Mustri vaatleja (vaatleja + vaadeldav)
23. Asünkroonsus RxJS-is ja sündmuste voogudes

Iga video all on lingid hoidlatele koos koodinäidetega, mida videos selgitatakse. Püüdsin näidata, et pole vaja taandada kõike ühele asünkroonsuse abstraktsioonile. Asünkroonsusele ei ole universaalset lähenemist ja iga juhtumi jaoks saate valida need meetodid, mis võimaldavad teil selle konkreetse ülesande jaoks koodi loomulikumalt kirjutada. Loomulikult täiendatakse seda kursust ja palun kõigil soovitada uusi teemasid ja panustada koodinäiteid. Kursuse põhieesmärk on näidata, kuidas asünkroonseid abstraktsioone seestpoolt üles ehitada, mitte ainult õpetada neid kasutama. Peaaegu kõik abstraktsioonid ei ole võetud raamatukogudest, vaid on antud nende kõige lihtsamas teostuses ja nende tööd analüüsitakse samm-sammult.

Küsitluses saavad osaleda ainult registreerunud kasutajad. Logi sissepalun.

Mis on teie arvamus kursusest?

  • Vaatan terve kursuse

  • Ma vaatan valikuliselt

  • Minu jaoks piisab ühest lähenemisest

  • Annan oma panuse kursusele

  • Mind ei huvita asünkroonsus

8 kasutajat hääletas. 1 kasutaja jäi erapooletuks.

Allikas: www.habr.com

Lisa kommentaar