Asinhrono programiranje (potpuni kurs)

Asinhrono programiranje (potpuni kurs)

Asinhrono programiranje je u posljednje vrijeme postalo jednako razvijeno kao klasično paralelno programiranje, a u svijetu JavaScripta, kako u preglednicima, tako i u Node.js-u, razumijevanje njegovih tehnika zauzelo je jedno od središnjih mjesta u formiranju pogleda programera. Predstavljam vam cjelovit i najkompletniji kurs s objašnjenjem svih široko rasprostranjenih metoda asinhronog programiranja, adaptera između njih i pomoćnih dijelova. Trenutno se sastoji od 23 predavanja, 3 izlaganja i 28 repozitorija s mnoštvom primjera koda na github-u. Ukupno oko 17 sati videa: link na playlistu.

Objašnjenja sheme

Na shemi (iznad) prikazane su veze između različitih načina rada s asinhronošću. Obojeni blokovi se odnose na asinhrono programiranje, dok su crno-bijeli prikazani metode paralelnog programiranja (semafori, muteksi, barijere itd.) i petri mreže, koje, kao i asinhrono programiranje i model aktera, predstavljaju različite pristupe implementaciji paralelnih izračuna (dane su na shemi samo da preciznije odrede mjesto asinhronog programiranja). Model aktera povezan je s asinhronim programiranjem zbog toga što implementacija aktera bez višestrukih niti također ima pravo na postojanje i služi za strukturiranje asinhronog koda. Isprekidane linije događaja i konkurentni red vezani su za povratne pozive jer se ove apstrakcije temelje na povratnim pozivima, ali svejedno formiraju kvalitativno nove pristupe.

Teme predavanja

1. Asinhrono programiranje (pregled)
2. Tajmeri, timeouti i EventEmitter
3. Asinhrono programiranje na povratnim pozivima
4. Neblokirajuće asinhrono iteriranje
5. Асинхронность с библиотекой async.js
6. Asinhronost na promise-ima
7. Asinhrone funkcije i obrada grešaka
8. Asinhroni adapteri: promisify, callbackify, asyncify
9. Asinhroni akumulatori podataka
10. Neobrađene greške u promise-ima
11. Problem asinhronog stektra
12. Generatori i asinhroni generatori
13. Iteratora i asinhroni iteratori
14. Otkrivanje asinhronih operacija
15. Asinhrona kompozicija funkcija
16. Thenable i lagani await
17. Konkurentna asinhrona lista
18. Obrazac otvorenog konstruktora (Revealing Constructor)
19. Budućnost: Asinhronost na budućnostima bez stanja
20. Odgođeno: Asinhronost na odgodama sa stanjem
21. Model igralcev (Actor Model)
22. Opazovalni vzorec (Observer + Observable)
23. Asinhronost v RxJS in tokovi dogodkov

Pod vsakim videom so povezave do repozitorijev s primeri kode, ki jih obravnavamo v videu. Poskušal sem pokazati, da ni potrebno vse reducirati na eno abstrakcijo asinhronosti. Ni univerzalnega pristopa k asinhronosti, ampak za vsak primer lahko izberemo tiste metode, ki omogočajo pisanje kode, ki je bolj naravna za to konkretno nalogo. Seveda bo ta tečaj dopolnjen in prosim vse, da predlagajo nove teme in prispevajo k primerom kode. Glavni cilj tečaja je pokazati, kako zgraditi abstrakcije asinhronosti znotraj, ne pa le naučiti, kako jih uporabljati. Praktično vse abstrakcije ne izvirajo iz knjižnic, temveč so predstavljene v njihovi najpreprostejši izvedbi in postopoma razložena njihova delovanja.

Samo registrovani korisnici mogu učestvovati u anketi. Prijavite se, molim vas.

Kako bi ocenili tečaj?

  • Ogledal bom cel tečaj

  • Ogledal bom izbrano

  • Ena metoda mi zadostuje

  • Prispeval bom v tečaj

  • Nimam interesa za asinhronost

Glasovalo je 8 uporabnikov. 1 uporabnik se je vzdržal.

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster