Асинхрондук программалоо (толук курс)

Асинхрондук программалоо (толук курс)

Асинхрондук программалоо жакында эле классикалык параллелдүү программалоодон кем эмес өнүккөн жана JavaSript дүйнөсүндө, браузерлерде да, Node.js да, анын ыкмаларын түшүнүү иштеп чыгуучулардын дүйнө таанымын калыптандырууда борбордук орундардын бирин ээледи. Мен сиздердин назарыңыздарга асинхрондук программалоонун бардык кеңири таралган ыкмаларын, алардын ортосундагы адаптерлерди жана көмөкчү тешиктерди түшүндүрүү менен комплекстүү жана толук курсту сунуштайм. Учурда ал 23 лекциядан, 3 баяндамадан жана github боюнча көптөгөн код мисалдары бар 28 репозиторийден турат. Жалпысынан 17 саатка жакын видео: ойнотмо тизмеге шилтеме.

Диаграмма үчүн түшүндүрмөлөр

Диаграмма (жогоруда) асинхрония менен иштөөнүн ар кандай жолдорунун ортосундагы байланыштарды көрсөтөт. Түстүү блоктор асинхрондук программалоону билдирет, ал эми с/б параллелдүү программалоо ыкмаларын (семафорлор, мутекстер, тоскоолдуктар ж.б.) жана асинхрондук программалоо жана актер модели сыяктуу эле параллелдүү эсептөөлөрдү ишке ашырууда ар кандай ыкмалар болгон Петри торлорун көрсөтөт (алар асинхрондук программалоонун ордун так аныктоо үчүн гана диаграммада берилген). Актер модели асинхрондук программалоо менен байланышкан, анткени көп агымсыз актерлорду ишке ашыруу да бар болууга укуктуу жана асинхрондук кодду түзүүгө кызмат кылат. Чекиттүү сызыктар окуяларды жана параллелдүү кезекти кайра чалууларга байланыштырат, анткени бул абстракциялар кайра чалууларга негизделген, бирок дагы эле сапаттык жаңы ыкмаларды түзөт.

Лекциянын темалары

1. Асинхрондук программалоо (обзор)
2. Таймерлер, тайм-ауттар жана EventEmitter
3. Кайра чалууларды колдонуу менен асинхрондук программалоо
4. Блоксуз асинхрондук итерация
5. async.js китепканасы менен асинхрония
6. Убадалар боюнча асинхрония
7. Асинхрондук функциялар жана каталарды иштетүү
8. Асинхрондук адаптерлер: убада кылуу, кайра чакыруу, асинхрондоштуруу
9. Асинхрондук маалымат жыйноочулар
10. Убадаларда чечилбеген каталар
11. Асинхрондук стектрэйс маселеси
12. Генераторлор жана асинхрондук генераторлор
13. Итераторлор жана асинхрондук итераторлор
14. Асинхрондук операцияларды жокко чыгаруу
15. Асинхрондук функциянын курамы
16. Андан кийин жеңил жана жеңил болот
17. Бир мезгилдеги асинхрондук кезек
18. Үлгү ачуу конструктору (Ачык конструктор)
19. Келечек: жарандыгы жок фьючерс боюнча асинхрония
20. Кийинкиге калтырылган: штаттык дифференциалдардагы асинхрония
21. Актер модели
22. Үлгү байкоочу (Байкоочу + Байкоочу)
23. RxJS жана окуя агымдарында асинхрония

Ар бир видеонун астында видеодо түшүндүрүлгөн код мисалдары менен репозиторийлерге шилтемелер бар. Мен баарын асинхрониянын бир абстракциясына кыскартуунун кереги жок экенин көрсөтүүгө аракет кылдым. Асинхронияга универсалдуу мамиле жок жана ар бир учур үчүн бул конкреттүү тапшырма үчүн кодду табигыйраак жазууга мүмкүндүк берген ыкмаларды тандай аласыз. Албетте, бул курс толукталат жана мен бардыгынан жаңы темаларды сунуштап, коддуу мисалдарды кошууну суранам. Курстун негизги максаты - асинхрондук абстракцияларды кантип колдонууну үйрөтүү эмес, аларды ичинен кантип курууну көрсөтүү. Дээрлик бардык абстракциялар китепканалардан алынбайт, бирок алардын эң жөнөкөй ишке ашырылышы менен берилип, алардын иши этап-этабы менен талданат.

Сурамжылоого катталган колдонуучулар гана катыша алышат. Кирүү, өтүнөмүн.

Курс тууралуу оюңуз кандай?

  • Мен бүт курсту көрөм

  • Мен тандап карап көрөм

  • Мен үчүн бир мамиле жетиштүү

  • Мен курска салым кошом

  • Мени асинхрония кызыктырбайт

8 колдонуучу добуш берди. 1 колдонуучу добуш берүүдөн баш тартты.

Source: www.habr.com

Комментарий кошуу