Ang asynchronous programming ay kamakailan lamang ay naging hindi gaanong binuo kaysa sa klasikal na parallel programming, at sa mundo ng JavaSript, kapwa sa mga browser at sa Node.js, ang pag-unawa sa mga diskarte nito ay kinuha ang isa sa mga pangunahing lugar sa paghubog ng worldview ng mga developer. Dinadala ko sa iyong pansin ang isang holistic at pinakakumpletong kurso na may paliwanag sa lahat ng malawakang pamamaraan ng asynchronous na programming, mga adaptor sa pagitan ng mga ito at mga pandiwang pantulong na pagbubukas. Kasalukuyan itong binubuo ng 23 lektura, 3 ulat at 28 repositoryo na may maraming halimbawa ng code sa github. Kabuuan ng humigit-kumulang 17 oras ng video:
Paliwanag ng pamamaraan
Ang diagram (sa itaas) ay nagpapakita ng mga koneksyon sa pagitan ng iba't ibang paraan ng pagtatrabaho sa asynchrony. Ang mga may kulay na bloke ay tumutukoy sa asynchronous programming, at ang b/w ay nagpapakita ng mga parallel na pamamaraan ng programming (semaphore, mutexes, barriers, atbp.) at Petri nets, na, tulad ng asynchronous programming at ang modelo ng aktor, ay magkakaibang mga diskarte sa pagpapatupad ng parallel computing (sila ay ibinigay sa diagram upang mas tumpak na matukoy ang lugar ng asynchronous programming). Ang modelo ng aktor ay nauugnay sa asynchronous programming dahil ang pagpapatupad ng mga aktor na walang multithreading ay mayroon ding karapatang umiral at nagsisilbing istraktura ng asynchronous code. Ang mga tuldok-tuldok na linya ay nagli-link ng mga kaganapan at ang kasabay na pila sa mga callback dahil ang mga abstraction na ito ay nakabatay sa mga callback, ngunit bumubuo pa rin ng husay na mga bagong diskarte.
Mga paksa ng panayam
Sa ilalim ng bawat video ay may mga link sa mga repository na may mga halimbawa ng code na ipinaliwanag sa video. Sinubukan kong ipakita na hindi na kailangang bawasan ang lahat sa isang abstraction ng asynchrony. Walang unibersal na diskarte sa asynchrony, at para sa bawat kaso maaari mong piliin ang mga pamamaraan na magpapahintulot sa iyo na magsulat ng code nang mas natural para sa partikular na gawaing ito. Siyempre, ang kursong ito ay pupunan at hinihiling ko sa lahat na magmungkahi ng mga bagong paksa at mag-ambag ng mga halimbawa ng code. Ang pangunahing layunin ng kurso ay upang ipakita kung paano bumuo ng asynchrony abstraction mula sa loob, at hindi lamang magturo kung paano gamitin ang mga ito. Halos lahat ng abstraction ay hindi kinuha mula sa mga aklatan, ngunit ibinibigay sa kanilang pinakasimpleng pagpapatupad at ang kanilang trabaho ay nasuri nang sunud-sunod.
Ang mga rehistradong user lamang ang maaaring lumahok sa survey.
Ano ang iyong opinyon tungkol sa kurso?
-
Papanoorin ko ang buong kurso
-
Pumili ako ng tingin
-
Ang isang diskarte ay sapat na para sa akin
-
Magtatampo ako sa kurso
-
Hindi ako interesado sa asynchrony
8 na user ang bumoto. 1 user ang umiwas.
Pinagmulan: www.habr.com