курс

JS: Разработка абстракций для асинхронности

2475 студентов 803 сообщения
Последнее обновление: 27 февраля 2024
Курс JS: Разработка абстракций для асинхронности
3 900 ₽ в месяц
за все курсы Хекслета
Зарегистрироваться
  • Тренажер с практикой
  • Бессрочный доступ к теории
  • Асинхронный формат
    обучения

Включено в курс

8 уроков (видео и/или текст)
8 упражнений в тренажере
20 проверочных тестов
Помощь в «Обсуждениях»
Доступ к остальным курсам платформы

Чему вы научитесь

  • Не бояться сложных задач
  • Делать сложные вещи простыми и приятными
  • Жонглировать колбеками

Описание

На этом курсе вы изучите разработку абстракций для асинхронности. Вы узнаете больше о таймерах, event loop и event emitter. В итоге научитесь работать с ошибками в асинхронном коде и использовать таймеры. Это пригодится, если вы решите сделать код более прямолинейным и предсказуемым.

Чтобы учиться было проще, стоит заранее изучить курс JS: Асинхронное программирование.

Программа курса

Продолжительность 9 часов
  • 1

    Введение

    Знакомимся с идеей асинхронного программирования и со структурой курса
  • 2

    Event loop

    Знакомимся с event loop — концепцией, позволяющей реализовывать асинхронное программирование в браузере с использованием событийной модели

    тесты

    упражнение

  • 3

    Таймеры

    Рассматриваем механизм таймеров, предоставляемый средой исполнения JS

    тесты

    упражнение

  • 4

    Callback hell

    Знакомимся с callback hell — пугающей ситуацией, которая может возникнуть при наличии зависимых асинхронных вызовов и нескольких функций обратного вызова

    тесты

    упражнение

  • 5

    Функция each

    Продолжаем разработку библиотеки для работы с асинхронным кодом, написать функцию 'each'

    упражнение

  • 6

    Раннее связывание

    Знакомимся с методом сохранения контекста для асинхронных вызовов

    тесты

  • 7

    Работа с ошибками

    Учимся работать с ошибками в асинхронном коде, разбираем отличия от обработки ошибок в синхронном коде

    тесты

    упражнение

  • 8

    Event emitter

    Знакомимся с концепцией event emitters, которая полезна в приложениях с асинхронным кодом

    тесты

    упражнение

  • 9

    Дополнительные материалы

    Статьи и видео, подобранные командой Хекслета. Помогут глубже погрузиться в тему курса

Формат обучения

Испытания

Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. Обычно мы рекомендуем выполнить 3-5 испытаний. Но если не получается, не отчаивайтесь. Просто вернитесь к ним позже

#
Задание
% завершений

Отзывы

Аватар пользователя Владислав Филатов
Владислав Филатов 19 февраля 2019

Как круто такие курсы находить, это как пасхалка в играх)) Большое спасибо, что оставили его, чувствую что асинхронность нужно подтянуть и тут этот курс)


Аватар пользователя Артём
Артём 19 декабря 2023

Классное задание, долго сидел над ним. Решение учителя гениальное... у меня решение заняло в разы больше строк


Аватар пользователя Slava Kaderkin
Slava Kaderkin 01 декабря 2020

Курс полезен в качестве проверки, как зашла асинхронность за время прохождения профессии. Вроде я застал только новую асинхронность на Хекслете, поэтому было интересно — чего тут все так боялись.

На удивление курс залетел, как по маслу. Повторил и закрепил, очень доволен. На мой взгляд, про EventEmitter и в новой асинхронности не мешало бы упомянуть. Он мельком всплывает то тут, то там. Например, в серверах в профе node.js упоминалось про него, а я не мог понять, о чем речь.


Аватар пользователя Александр  Вериго
Александр Вериго 30 декабря 2018

Отличный курс! Даже несмотря на то, что он уже заменен другим, очень помог разобраться с callback'ами! Спасибо


Аватар пользователя Volodymyr Vovk
Volodymyr Vovk 26 августа 2018

Какое же лаконичное решения учителя в сравнении с моим. Очень классный подход не использовать в редьюсе current значение (даже не думал о таком), а только индекс для двух файлов(тогда не надо реверсировать массив)

А, еще класно вместо проверок на каждой итерации просто замапить потом и поменять undefined на null

Рекомендуемые программы

профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Python, Разработка веб-приложений и сервисов используя Django, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Тестирование веб-приложений, чек-листы и тест-кейсы, этапы тестирования, DevTools, Postman, SQL, Git, HTTP/HTTPS, API
4 месяца
с нуля
Старт 26 декабря
профессия
Программирование на Java, Разработка веб-приложений и микросервисов используя Spring Boot, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Google таблицы, SQL, Python, Superset, Tableau, Pandas, визуализация данных, Anaconda, Jupyter Notebook, A/B-тесты, ROI
9 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на PHP, Разработка веб-приложений и сервисов используя Laravel, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Ruby, Разработка веб-приложений и сервисов используя Rails, проектирование и реализация REST API
5 месяцев
c опытом
Старт 26 декабря
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на JavaScript, разработка веб-приложений, bff и сервисов используя Fastify, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 26 декабря