курс

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

2417 студентов 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

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

профессия
от 6 300 ₽ в месяц
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 1 августа
профессия
от 6 300 ₽ в месяц
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 1 августа
профессия
от 6 183 ₽ в месяц
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 1 августа
профессия
от 6 300 ₽ в месяц
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 1 августа
профессия
от 5 025 ₽ в месяц
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 1 августа
профессия
от 6 300 ₽ в месяц
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 1 августа
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 1 августа
профессия
от 9 900 ₽ в месяц
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 1 августа
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 1 августа
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
в разработке
Старт 1 августа