Мы используем cookie для стабильной работы сервиса. Подробнее

JavaScript Advanced — продвинутые концепции языка и ООП

ФорматОнлайн
Объём19 занятий
О курсе

Подробнее

Этот курс является вторым курсом по JavaScript, который рассматривает уже продвинутые концепции и детально погружается в устройство JS. От вас нужно только базовое знание основ JS и HTML и CSS для финального проекта. Этот курс сфокусирован на том, чтобы донести продвинутые концепции языка, а так же подвести вас к использованию фреймворков, таких, как React, Vue и Angular с пониманием, что происходит под капотом. Ведь все эти знания мы применим на финальном проекте – библиотеки книг. Мы сделаем полноценное SPA приложение с компонентной структурой, реактивностью и сборщиком. В процессе мы даже сделаем свой mini framework с использованием ООП В курсе мы детально изучим: Map и Set, WeekMap и WeekSet Работу с числами, Math и BigInt Работу с датой и временем Интернационализацию чисел и дат через Intl API Работу с таймерами и интервалами Принципы ООП Prototype и ES6 классы SOLID Асинхронный JavaScript Запросы на сервер и их работу Работу Event Loop Promises и работу с ними Устройство DOM Events, захват и всплытие Модульность commonjs и es6 Работу с NPM Настройку сборки проекта Лекции содержат как теоретическую часть, так и live-code, где мы вместе будем писать код, разбираю особенности работы JavaScript. В конце каждого модуля вас ожидает тест, который позволит укрепить ваши знания.
Требования

Что нужно для старта

  • Базовое знание основ JavaScript. Будет плюсом знание HTML и CSS.
Результат

Что вы получите

  • Работать с Map и Set, WeekMap и WeekSet
  • Работать с числами, Math и BigInt
  • Работать с интернационализацией чисел и дат через Intl API
  • Работать с таймерами и интервалами
  • Понимать.принципы ООП
  • Использовать prototype и ES6 классы
  • Понимать и применять SOLID
  • Писать асинхронный JavaScript
  • Делать запросы на сервер и понимать принцип их работы
  • Понимать как работает Event Loop
  • Создавать и обрабатывать Promise
  • Понимать устройство DOM и его работу
  • Обрабатывать Event и понимать концепции захвата и всплытия
  • Создавать модульные приложения на commonjs и es6
  • Работать с NPM
  • Настраивать сборку проекта
Аудитория

Для кого этот курс

  • Начинающим разработчиками со знанием основ JS, HTML и CSS. Для тех, кто хочет структурировать знания или узнать как работает JS под капотом. Для тех, кто хочет углубить знания перед переходом к фреймворкам.
Содержание

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

19 занятий
ТемаЧто внутри
01Вводное видео

- Продвинутый JavaScript
- Как устроен курс
- Обзор проекта
- Обзор курсов
- Перенос курса

02Настройка окружения

- Настройка окружения
- Установка NodeJS
- Настройки VSCode
- Настройка проекта

03Maps и Sets

- Структура Set
- Sets
- Структура Map
- Основы работы с Map
- Быстрое создание Map
- Итерация по Map
- Упражнение - swap ключей и значений
- WeakMap
- WeakSet
- Тест - Maps и Sets

04Расчёты и math

- Конвертация и проверка чисел
- Библиотека Math
- Округление
- Упражнение - Функция случайного числа
- Оператор остатка от деления
- Разделитель чисел
- Работа с BigInt
- Интернационализация чисел
- Упражнение - Конвертер валют
- Тест - Расчёты и math

05Даты и время

- Создание дат
- Операции с датами
- Сравнение дат
- Упражнение - Проверка на день рождения
- Интернационализация дат
- Тест - Дата и время

06Таймеры

- Создание таймеров
- Таймеры и Event Loop
- Точность таймеров
- Работа с интервалами
- Упражнение - Таймер пиццы
- Тест - Таймеры

07Объектно ориентированное программирование

- Что такое ООП
- Реализация ООП в JS
- Оператор new
- Prototype
- Упражнение - Корзина товаров
- Цепочки prototype
- Тест - Объектно ориентированное программирование

08Классы

- Классы
- Setters и getters
- Static
- Приватные методы и свойства
- Упражнение - класс пользователя
- Object.create
- Тест - Классы

09Принципы ООП в классах

- Абстракция и инкапсуляция
- Наследование
- Наследование в ES6
- Override методов
- Упражнение - Удар по орку
- Полиморфизм
- Паттерн Builder и chaining
- Тест - Принципы ООП в классах

10SOLID

- О SOLID
- Принцип единой ответственности
- Принцип открытости и закрытости
- Принцип подстановки Барбары Лисков
- Принцип разделения интерфейса
- Принцип инверсии зависимостей
- Тест - SOLID

11Асинхронный JavaScript

- Асинхронный код в JS
- Запросы на сервер
- Пример работы с Insomnia
- JSON
- Получение данных
- Упражнение - Расчёт цены
- Проблемы callback
- Тест - Асинхронный JavaScript

12Promises

- Promises и fetch
- Обработка promises
- Цепочка promise
- Обработка reject
- Finally
- Упражнение - Select выбора категорий
- Ручное создание ошибок
- Упражнение - Функция запросов
- Тест - Promises

13Event Loop

- Как работает асинхронность
- Пример работы Event Loop
- Создание простого Promise
- Статические методы Promise
- Упражнение - создание fetch
- Тест - Event Loop

14Современный Асинхронный JavaScript

- Async await
- Try catch
- Упражнение - Мой город
- Асинхронные методы
- Последовательность выполнения
- Параллельное выполнение
- Другие комбинации Promise
- Все возможности fetch
- Упражнение - Генератор активностей
- Тест - Современный Асинхронный JavaScript

15Продвинутый DOM и Events

- Как работает DOM
- Работа с элементами
- Визуальное положение элементов
- Типы событий и обработчики
- Всплытие событий
- Пример всплытия событий
- Делегирование событий
- Перемещение по DOM
- Жизненный цикл событий DOM
- Упражнение - Поиск по списку
- Загрузка скриптов defer и async
- Тест - Продвинутый DOM и Events

16Модульность

- Модули в JavaScript
- IIFE в модулях
- Модули commonjs
- ES6 модули
- Await на верхнем уровне
- Процесс сборки
- Тест - Модульность

17Работа с NPM

- Обзор NPM
- Авторизация и профиль
- Разбор package json
- Управление зависимостями
- Тест - Работа с NPM

18Проект - Библиотека книг

- Обзор проекта
- Настройка проекта
- Конфигурация сборщика
- View страниц и роутинг
- State и реактивности
- Первый компонент
- Вёрстка шапки
- Компонент поиска
- Поиск книг
- Упражнение - Состояние загрузки
- Вёрстка карточки
- Упражнение - Добавление в избранное
- Упражнение - Избранное
- Развитие проекта

19Заключение

- Куда двигаться дальше?

01Вводное видео

- Продвинутый JavaScript
- Как устроен курс
- Обзор проекта
- Обзор курсов
- Перенос курса

02Настройка окружения

- Настройка окружения
- Установка NodeJS
- Настройки VSCode
- Настройка проекта

03Maps и Sets

- Структура Set
- Sets
- Структура Map
- Основы работы с Map
- Быстрое создание Map
- Итерация по Map
- Упражнение - swap ключей и значений
- WeakMap
- WeakSet
- Тест - Maps и Sets

04Расчёты и math

- Конвертация и проверка чисел
- Библиотека Math
- Округление
- Упражнение - Функция случайного числа
- Оператор остатка от деления
- Разделитель чисел
- Работа с BigInt
- Интернационализация чисел
- Упражнение - Конвертер валют
- Тест - Расчёты и math

05Даты и время

- Создание дат
- Операции с датами
- Сравнение дат
- Упражнение - Проверка на день рождения
- Интернационализация дат
- Тест - Дата и время

06Таймеры

- Создание таймеров
- Таймеры и Event Loop
- Точность таймеров
- Работа с интервалами
- Упражнение - Таймер пиццы
- Тест - Таймеры

07Объектно ориентированное программирование

- Что такое ООП
- Реализация ООП в JS
- Оператор new
- Prototype
- Упражнение - Корзина товаров
- Цепочки prototype
- Тест - Объектно ориентированное программирование

08Классы

- Классы
- Setters и getters
- Static
- Приватные методы и свойства
- Упражнение - класс пользователя
- Object.create
- Тест - Классы

09Принципы ООП в классах

- Абстракция и инкапсуляция
- Наследование
- Наследование в ES6
- Override методов
- Упражнение - Удар по орку
- Полиморфизм
- Паттерн Builder и chaining
- Тест - Принципы ООП в классах

10SOLID

- О SOLID
- Принцип единой ответственности
- Принцип открытости и закрытости
- Принцип подстановки Барбары Лисков
- Принцип разделения интерфейса
- Принцип инверсии зависимостей
- Тест - SOLID

11Асинхронный JavaScript

- Асинхронный код в JS
- Запросы на сервер
- Пример работы с Insomnia
- JSON
- Получение данных
- Упражнение - Расчёт цены
- Проблемы callback
- Тест - Асинхронный JavaScript

12Promises

- Promises и fetch
- Обработка promises
- Цепочка promise
- Обработка reject
- Finally
- Упражнение - Select выбора категорий
- Ручное создание ошибок
- Упражнение - Функция запросов
- Тест - Promises

13Event Loop

- Как работает асинхронность
- Пример работы Event Loop
- Создание простого Promise
- Статические методы Promise
- Упражнение - создание fetch
- Тест - Event Loop

14Современный Асинхронный JavaScript

- Async await
- Try catch
- Упражнение - Мой город
- Асинхронные методы
- Последовательность выполнения
- Параллельное выполнение
- Другие комбинации Promise
- Все возможности fetch
- Упражнение - Генератор активностей
- Тест - Современный Асинхронный JavaScript

15Продвинутый DOM и Events

- Как работает DOM
- Работа с элементами
- Визуальное положение элементов
- Типы событий и обработчики
- Всплытие событий
- Пример всплытия событий
- Делегирование событий
- Перемещение по DOM
- Жизненный цикл событий DOM
- Упражнение - Поиск по списку
- Загрузка скриптов defer и async
- Тест - Продвинутый DOM и Events

16Модульность

- Модули в JavaScript
- IIFE в модулях
- Модули commonjs
- ES6 модули
- Await на верхнем уровне
- Процесс сборки
- Тест - Модульность

17Работа с NPM

- Обзор NPM
- Авторизация и профиль
- Разбор package json
- Управление зависимостями
- Тест - Работа с NPM

18Проект - Библиотека книг

- Обзор проекта
- Настройка проекта
- Конфигурация сборщика
- View страниц и роутинг
- State и реактивности
- Первый компонент
- Вёрстка шапки
- Компонент поиска
- Поиск книг
- Упражнение - Состояние загрузки
- Вёрстка карточки
- Упражнение - Добавление в избранное
- Упражнение - Избранное
- Развитие проекта

19Заключение

- Куда двигаться дальше?

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

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

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «JavaScript Advanced — продвинутые концепции языка и ООП» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Информация обновлена 3 сентября 2026 г.

Продолжить выбор

Похожие курсы

Разработка на Angular
−10%14 сентября
Разработка на Angular

Освойте промышленную разработку на Angular: создавайте динамические веб-приложения с нуля. Изучите TypeScript, компоненты, шаблоны, пайпы, сервисы, маршрутизацию и сложные формы.…

Онлайн13 занятийСредний
42 900 ₽−10%
38 610 ₽
Node js для Front End
4 месяца
Node js для Front End

Backend разработка на Node.js: Express.js, NestJS фреймворки. Работа с базами данных PostgreSQL, MongoDB. Создание REST API, аутентификация и авторизация. WebSockets для реального…

ОнлайнСредний
100 000 ₽от 5 555 ₽/мес на 18 мес.
Основы C#
Основы C#

Курс несомненно подойдёт начинающим разработчикам, который хотят освоить современный и востребованный язык программирования. Курс мы начнём с изучения основ - встроенных в язык ти…

Онлайн10 занятий
3 999 ₽
Начать без затрат

Бесплатные курсы

Python для решения практических задач
Бесплатно
Python для решения практических задач

Научились решать простые задачи на питоне, но не можете понять, как сделать что-то полезное? Наш курс научит вас правильно гуглить! На примерах задач сбора данных (Data Scraping)…

Онлайн5 занятий
Бесплатно
Claude Code с нуля до реальных задач
Бесплатно1 месяц
Claude Code с нуля до реальных задач

Вы разовьёте аналитическое мышление, научитесь искать уязвимости и обеспечивать безопасность IT-систем. Освоите востребованную профессию даже с нулевым опытом в IT. Программа курс…

Онлайн
Бесплатноот 11 647 ₽/мес
Markdown синтаксис
Бесплатно2 часа
Markdown синтаксис

Этот курс предназначен для всех, кто работает с текстом в digital-среде. Вы освоите Markdown — универсальный язык разметки, который используют в GitHub, документации, блогах и соо…

Онлайн3 занятий
Бесплатно