Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Сертификат
Сертификат
Да

Стоимость курса

45 000 ₽
нет рассрочки

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

Этот курс будет полезен разработчикам, которые уже имеют опыт использования JavaScript, но хотят полностью реализовать потенциал этого языка и начать использовать менее известные, но его очень интересные и полезные возможности.

Целевая аудитория:

Разработчики JavaScript, разработчики TypeScript, веб-разработчики, разработчики NodeJS developers.

 

Что вы получите после обучения

Приобретаемые навыки
2
Асинхронное программирование
3
Workers
4
Параллельное программирование
5
Функциональные программирование
6
Redux
7
REST API
9
WebSocket

Образовательная организация

Оценка и обучение ИТ-специалистов по ключевым направлениям разработки программного обеспечения. Курсы от экспертов-практиков по языкам программирования, системному и бизнес-анализу, архитектуре ПО, ручному и автоматизированному тестированию ПО, Big Data и машинному обучению, управлению проектами и Agile. Действует скидка 10% на обучение физических лиц.

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

1. Подробно об основах JavaScript (6 ч. - теория, 2 ч. - практика)

  • Объект классов;
  • Дескрипторы объекта;
  • Методы объекта;
  • Наследование прототипа;
  • Символы;
  • Итераторы;
  • Генераторы;
  • Создание итерируемых объектов;
  • Асинхронные генераторы.

2. Подробно о типах в JavaScript (6 ч. - теория, 2 ч. - практика)

  • Обзор типов;
  • Номер типа;
  • Проблемы плавающей точки и округления;
  • Тип «Строка»;
  • Тип Boolean;
  • Конвертация типов;
  • Map, Set, WeakMap, WeakSet;
  • BigInt;
  • ArrayBuffer;
  • Типизированные массивы;
  • DataViews;
  • Blobs;
  • FileReader;
  • Обработка загруженных файлов.

3. Асинхронное программирование (7 ч. - теория, 2 ч. - практика)

  • Асинхронные вызовы;
  • Использование в обратных вызовах;
  • Класс «Промис»;
  • Обработка исключений Promise;
  • Методы all(), any(), race(), allSettled();
  • Отмена промиса с помощью Promise.race();
  • Отмена промиса с помощью AbortController;
  • Синтаксис async/await;
  • Синтаксис async/await: Обработка исключений;
  • Синтаксис async/await: await высокого уровня;
  • Синтаксис async/await: Ограничения;
  • Архитектура REST;
  • Коды состояния HTTP;
  • Методы HTTP;
  • Отсутствие сохранения состояния и масштабируемость;
  • Операции CRUD и сервисы Rest;
  • Формат возвращаемых данных: XML, JSON, XHTML;
  • Функция Fetch;
  • Fetch с возможностью отменить запрос;
  • Библиотека Axios для вызовов REST;
  • Обработка ошибок в Axios;
  • Отмена запросов в Axios;
  • Перехватчики в Axios;
  • Протокол WebSocket;
  • WebSocket в браузере;
  • WebSocket на сервере (Node.js);
  • Когда использовать WebSocket?

4. Workers и параллельное программирование (4 ч. - теория, 2 ч. - практика)

  • Workers;
  • Типы worker;
  • Worker APIs;
  • Регистрирующий worker;
  • Примеры использования Worker;
  • Сервисные workers;
  • Кэш API;
  • Регистрирующий Service worker;
  • Жизненный цикл Service worker;
  • Service worker как прокси сервера;
  • Стратегия Cache First (Cache Falling Back to Network);
  • Стратегия Network First (Network Falling Back to Cache);
  • Стратегия Stale-While-Revalidate;
  • Какую стратегию использовать;
  • Обновление кэша в стратегии пуш-сообщений;
  • Обновление кэша в стратегии фоновой синхронизации.

5. Функциональные программирование (9 ч. - теория)

  • Функции как данные;
  • Аргументы функции и массив аргументов;
  • Функции как методы;
  • Вызов и применение методов;
  • Привязка функции к объекту;
  • Замыкания;
  • Создание инкапсулированного значение через замыкание;
  • Функция «Конструктор»;
  • Функции массивов: map/filter/reduce;
  • Парадигмы программирования;
  • Декларативное и императивное программирование;
  • Функциональное программирование;
  • Высокоупорядоченные функции;
  • Чистые функции;
  • Преимущества чистых функций;
  • Неизменяемость;
  • Неизменяемость объектов: Оператор Spread;
  • Преимущества неизменяемости;
  • Immutable.js;
  • Встроенные структуры данных в Immutable.js;
  • Монады и функциональная композиция;
  • Function pipe();
  • Декомпозиция функций;
  • Монады для операций SIMD;
  • Частичное применение функции;
  • Карринг;
  • Нулевая безопасность;
  • Шаблон проектирования Null Object;
  • Монада Maybe;
  • Частично определенная функция;
  • Правила хорошего кода для написания функций;
  • Функциональные шаблоны проектирования;
  • Шаблон проектирования MVC с чистыми функциями;
  • Шаблон проектирования «наблюдатель» (observer);
  • Шаблон проектирования «порождение событий» (event sourcing);
  • Шаблон проектирования REDUX;
  • REDUX DevTools;
  • Преимущества REDUX;
  • Шаблоны проектирования в реактивном программировании (RxJS);
  • Операторы filter/map/take;
  • Операторы MergeMap/ConcatMap/SwitchMap;
  • Операторы Window/Buffer;
  • Операторы Sample/Throttle/Debounce;
  • Преимущества и примеры использования реактивного программирования.

Рейтинг курса

4
рейтинг
0
0
0
0
0

Может быть интересно

обновлено 01.12.2024 09:43
JavaScript. Продвинутый уровень

JavaScript. Продвинутый уровень

Оставить отзыв
Поделиться курсом с друзьями