Асинхронды бағдарламалау (толық курс)

Асинхронды бағдарламалау (толық курс)

Жақында асинхронды бағдарламалау классикалық параллельді бағдарламалаудан кем емес дамыды және JavaSript әлемінде браузерлерде де, Node.js-те де оның әдістерін түсіну әзірлеушілердің дүниетанымын қалыптастыруда орталық орындардың бірін алды. Мен сіздердің назарларыңызға асинхронды бағдарламалаудың барлық кең таралған әдістерін, олардың арасындағы адаптерлер мен қосалқы саңылауларды түсіндіретін тұтас және толық курсты ұсынамын. Қазіргі уақытта ол 23 лекциядан, 3 баяндамадан және github-та көптеген код мысалдары бар 28 репозиторийден тұрады. Барлығы шамамен 17 сағаттық бейне: ойнату тізіміне сілтеме.

Схеманың түсіндірмесі

Диаграмма (жоғарыда) асинхрониямен жұмыс істеудің әртүрлі тәсілдері арасындағы байланыстарды көрсетеді. Түсті блоктар асинхронды бағдарламалауға жатады, ал b/w параллель бағдарламалау әдістерін (семафорлар, мутекстер, тосқауылдар және т.б.) және асинхронды бағдарламалау және актер моделі сияқты параллельді есептеулерді жүзеге асырудың әртүрлі тәсілдері болып табылатын Петри желілерін көрсетеді (олар асинхронды бағдарламалау орнын дәлірек анықтау үшін ғана диаграммада берілген). Актер моделі асинхронды бағдарламалаумен байланысты, себебі көп ағынсыз актерлерді іске асыру да өмір сүруге құқылы және асинхронды кодты құрылымдауға қызмет етеді. Нүктелі сызықтар оқиғаларды және бір мезгілде кезекті кері қоңырауларға байланыстырады, себебі бұл абстракциялар кері қоңырауларға негізделген, бірақ әлі де сапалы жаңа тәсілдерді құрайды.

Дәріс тақырыптары

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

Әрбір бейненің астында бейнеде түсіндірілетін код мысалдары бар репозиторийлерге сілтемелер бар. Мен бәрін асинхронияның бір абстракциясына дейін азайтудың қажеті жоқ екенін көрсетуге тырыстым. Асинхронияға әмбебап тәсіл жоқ және әрбір жағдай үшін осы нақты тапсырма үшін кодты табиғи түрде жазуға мүмкіндік беретін әдістерді таңдауға болады. Әрине, бұл курс толықтырылады және мен барлығынан жаңа тақырыптар ұсынып, код мысалдарын енгізуді сұраймын. Курстың негізгі мақсаты - асинхронды абстракцияларды қалай пайдалану керектігін үйрету ғана емес, ішкі жағынан қалай құру керектігін көрсету. Барлық дерлік абстракциялар кітапханалардан алынбайды, бірақ олардың ең қарапайым жүзеге асуында беріледі және олардың жұмысы кезең-кезеңімен талданады.

Сауалнамаға тек тіркелген пайдаланушылар қатыса алады. Кіру, өтінемін.

Курс туралы пікіріңіз қандай?

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

  • Мен таңдаулы түрде қараймын

  • Маған бір тәсіл жеткілікті

  • Курсқа өз үлесімді қосамын

  • Мен асинхронияға қызықпаймын

8 қолданушы дауыс берді. 1 пайдаланушы қалыс қалды.

Ақпарат көзі: www.habr.com

пікір қалдыру