JavaScript. Продвинутый уровень
JavaScript – сложный и зрелый язык программирования, имеющий множество неочевидных функций. Данный курс поможет слушателям получить более глубокое понимание этого популярного языка, который, на первый взгляд, кажется простым, но на самом деле довольно сложен.
32 ак.ч.
Онлайн
WEB-024
JavaScript. Продвинутый уровень
Записаться на курс
Длительность
32 ак.ч.
Локация
Онлайн
Код
WEB-024
Расписание и цены
45 000 руб.
* Для физических лиц действует скидка 10% Закажите корпоративное обучение с учетом ваших потребностей
JavaScript. Продвинутый уровень
Записаться на курс
Длительность
32 ак.ч.
Локация
Онлайн
Код
WEB-024
Расписание и цены
45 000 руб.
* Для физических лиц действует скидка 10% Закажите корпоративное обучение с учетом ваших потребностей

Описание

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

Цели

В ходе тренинга слушатели:
  • научатся лучше понимать язык JavaScript;
  • подробно изучат типы JavaScript и их конвертацию;
  • узнают об асинхронном программировании;
  • научатся использовать REST сервисы и вебсокеты для взаимодействия с сервером;
  • научатся использовать workers и параллельное программирование;
  • смогут использовать workers для кэширования;
  • научатся использовать функциональное и реактивное программирование.

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

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

Разбираемые темы

  • 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;
    • Преимущества и примеры использования реактивного программирования.
  • Развернуть программу
Раcписание курсов
Вид:
Регистрируйтесь на следующий курс
Предварительная регистрация гарантирует участие в обучении. Мы обязательно оповестим вас, когда курс будет запланирован
+
Связанные курсы
Разработка на JavaScript
Курс посвящен современному JavaScript (EcmaScript 2015+), использованию JS для работы в браузере (события, манипуляция HTML и CSS), работе с модулями JS (NPM, Webpack), работе с сервером (HTTP, REST, AJAX, Axios, WebSocket). Курс является основой для изучения веб-фреймворков Angular и React.
Онлайн:
14.05.2024 - 31.05.2024
Язык программирования TypeScript
TypeScript – это строго типизированный язык программирования, созданный на основе JavaScript. Он включает в себя систему типизации, облегчающую валидацию JavaScript приложений. TypeScript выбран в качестве основного языка для фреймворка Angular и в настоящее время широко используется для React-разработки и создания клиентских приложений корпоративного уровня.
Смотреть каталог
Ваши преимущества
Экспертность
Тренеры-эксперты из реальных проектов крупнейших компаний, лидеров в своей отрасли
Живое обучение
“Живая” коммуникация с тренером даже в онлайн-формате
Практика
Максимально наполненные практикой занятия, работа в группах, выполнение домашних заданий
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.