Курс "JavaScript/DOM/Интерфейсы" для новичков
Курс для тех, кто не разрабатывал на JS и имеет мало опыта в профессиональном программировании. Вы научитесь создавать браузерные компоненты на JavaScript, разбираться в коде и будете готовы к освоению фреймворка.
Спойлер: Цели курса
Спойлер: Как организовано обучение?
Курс идёт примерно 1.5 месяца.
До начала обучения: вводные материалы:
Спойлер: Программа курса
Занятия проходят онлайн два раза в неделю.
Собрание:
Объекты являются основной структурой данных в JavaScript, поэтому изучаем их подробно.
Переходим работе со страницей. Далее мы будем изучать возможности языка JavaScript в процессе построения интерфейсов в браузере.
На этом занятии изучаем DOM-модель документа и методы работы с ней. Они нужны, чтобы отображать кнопки, меню и другие компоненты, а также динамических их менять.
Изучаем взаимодействие с посетителем при помощи событий:
Отдых, повторение, следующее занятие - через неделю.
Компонентная архитектура, ООП:
Более сложные компоненты:
Продолжаем практиковаться в создании интерфейсных компонент, изучаем новые события.
Начинаем это занятие с обычных HTTP-форм, затем переходим к динамическим сетевым запросам.
Для организации последовательных сетевых запросов или других асинхронных вызовов используются специальные объекты Promise. Изучаем, как с ними работать.
На этом занятии мы собираем воедино проект, компоненты которого создавали в предыдущих занятиях.
Ответы на дополнительные вопросы.
Спойлер: Курсовой проект
Ресторан с онлайн-заказом "Bangkok Express":
Спойлер: Предварительные требования
Спойлер: Преподаватели
Спойлер: Что говорят о курсе участники?
Мы занимаемся обучением с 2007 года. За это время у нас обучились тысячи разработчиков из разных стран и компаний. Все отзывы являются честными. Мы не модерируем их.

Курс регулярно обновляется. Все отзывы относятся к последней версии курса.
Спойлер: Гарантия
Для этого достаточно не позже окончания первой недели курса написать, что именно вас не устраивает, и тогда ваше участие будет прекращено, а вы получите деньги обратно.
Спойлер: Цена курса
Цена курса составляет 23000₽
Спойлер: Продающий сайт
learn.javascript.ru/courses/jsbasic
Курс для тех, кто не разрабатывал на JS и имеет мало опыта в профессиональном программировании. Вы научитесь создавать браузерные компоненты на JavaScript, разбираться в коде и будете готовы к освоению фреймворка.
Спойлер: Цели курса
- Научить писать хороший современный код, понимать JavaScript в объёме, достаточном для создания интерфейсных компонентов, взаимодействия с сервером (детали программы далее).
- Подготовить к освоению фреймворка: React, Vue, Angular или другого, если ваша цель - создавать сложные приложения.
Спойлер: Как организовано обучение?
Курс идёт примерно 1.5 месяца.
До начала обучения: вводные материалы:
- За неделю до курса вы получите видео-лекции по основам JavaScript. Они довольно простые, чтобы на первом занятии вы уже что-то знали.
- Мы также будем использовать систему Git/GitHub для обмена исходным кодом, так делает большинство проектов. Для тех, кому это в новинку - дадим крэш-курс и поможем разобраться.
- Занятие проходит в формате вебинара. Запись занятия доступна через 15 минут после окончания. Вы также сохраняете доступ к записям после окончания курса.
- Ваши решения присылаете преподавателю, он проверяет качество кода, использование правильных шаблонов проектирования, даёт обратную связь. К ряду заданий прилагаются тесты, которые частично позволяют проверить правильность решения самому.
- Между занятиями доступен групповой чат для общения и вопросов преподавателю.
- Делаем курсовой проект: онлайн-ресторан. Большую часть кода для проекта пишете вы.
- Разработчик на JavaScript начального-среднего уровня ("junior+").
- Вы умеете создавать компоненты интерфейса на JavaScript.
- Вы можете разобраться в чужом коде.
- Вы готовы к освоению фреймворков (React, Vue и других), а также Node.js для серверного JavaScript.
- По окончанию курсов вы получаете сертификат в электронном виде на русском и английском языках.
Спойлер: Программа курса
Занятия проходят онлайн два раза в неделю.
Собрание:
- Первая встреча традиционно является собранием. На нём мы знакомимся, проверяем подключение, обсуждаем организационные вопросы, взаимодействие с преподавателем, как учиться на курсе.
- К первому занятию вы посмотрели вводный видеокурс и уже знаете самые основы JavaScript. Вместе проходим по важным особенностям JavaScript, обращаем внимание на нюансы и особые возможности языка, убеждаемся в том, что понимаем их.
- Изучаем инструменты для разработки и отладки JavaScript, которыми будем пользоваться далее.
Объекты являются основной структурой данных в JavaScript, поэтому изучаем их подробно.
- Основные действия с объектами: запись и чтение свойств, перебор.
- Особенности объектов в JavaScript: передача по ссылке, копирование объектов.
- Методы объектов, использование this.
- Деструктуризация объектов и массивов.
- Способы задания функций в JavaScript: Function Expression, Function Declaration, функции-стрелки, их отличия.
- Замыкания, функции-колбэки и методы массивов, которые их используют, сортировка, поиск.
- По окончанию этого занятия вы знаете JavaScript и умеете работать с основными структурами данных в достаточной степени, чтобы перейти к созданию интерфейсов.
Переходим работе со страницей. Далее мы будем изучать возможности языка JavaScript в процессе построения интерфейсов в браузере.
На этом занятии изучаем DOM-модель документа и методы работы с ней. Они нужны, чтобы отображать кнопки, меню и другие компоненты, а также динамических их менять.
- Создание, вставка, изменение элементов на странице.
- Атрибуты, свойства, управление классами.
- Простые задачи по генерации компонентов интерфейса.
- DOM и инструменты разработчика в браузере.
- Динамическая генерация элементов интерфейса.
Изучаем взаимодействие с посетителем при помощи событий:
- Установка обработчиков событий.
- Свойства событий.
- Погружение и всплытие.
- Приём проектирования "делегирование" для работы с большим количеством элементов, упрощения сложных интерфейсов.
- Приём проектирования "поведение" для добавления функционала при помощи HTML-атрибутов.
- Практика: меню, карусель изображений.
Отдых, повторение, следующее занятие - через неделю.
Компонентная архитектура, ООП:
- Современный подход к разработке приложений: создание интерфейсных компонентов, использование своих событий (Custom Events) для связи между ними. Архитектура веб-приложения.
- Классы, ООП в JavaScript.
- Модули в JavaScript.
Более сложные компоненты:
Продолжаем практиковаться в создании интерфейсных компонент, изучаем новые события.
- Drag'n'drop при помощи событий, компонент "слайдер" для проекта.
- Обработка пользовательского ввода, события клавиатуры.
- Компоненты "модальное окно", "ленточное меню".
Начинаем это занятие с обычных HTTP-форм, затем переходим к динамическим сетевым запросам.
- Создание и отправка форм, динамические формы, их валидация.
- DOM-свойства и методы для форм. Чтение данных из формы.
- Метод fetch и, основы Promise для сетевых запросов.
- Обмен данными с сервером в формате JSON.
Для организации последовательных сетевых запросов или других асинхронных вызовов используются специальные объекты Promise. Изучаем, как с ними работать.
- Событийный цикл браузера.
- Объектов Promise в деталях, их методы, цепочки Promise.
- Промисификация функций.
- Синтаксис async/await.
На этом занятии мы собираем воедино проект, компоненты которого создавали в предыдущих занятиях.
- Серверный JavaScript: основы Node.js
- Сборка проекта при помощи Webpack.
Ответы на дополнительные вопросы.
Спойлер: Курсовой проект
Ресторан с онлайн-заказом "Bangkok Express":
- Сверху карусель с товарами, ниже ленточное меню, слайдер, далее подгрузка товаров с сервера, динамическая фильтрация списка товаров.
- А также корзина товаров с динамическим позиционированием при прокрутке, анимацией, модальным окном и формой заказа.
- Компонентная архитектура позволяет легко расширять ресторан, усложнять интерфейс и структуру.
Спойлер: Предварительные требования
- Знакомство с HTML/CSS: верстать макеты не понадобится, но основные теги, позиционирование, margin/padding надо знать.
- Интернет 256кб/с или быстрее для видео.
Спойлер: Преподаватели
- Станислав Долгачёв. Ведёт курс с 22 июля 2019. Живу фронтенд-разработкой c 2014 года. За это время прошёл путь от начинающего до ведущего разработчика в компании EPAM. Также являюсь лидером фронтенд-сообщества внутри компании, где помогаю готовить доклады и веду встречи по фронтенд. Последние два года занимаюсь развитием и обучением коллег как лектор и ментор.
- Константин Александров. Ведёт курс с 14 января 2020. Увлекаюсь программированием с 13 лет. Коммерческим программированием занимаюсь с 2009г. Основной язык – JavaScript. Очень нравится писать на нём хотя знаю и несколько других языков. Разнообразие применения JavaScript просто поражает. Зная его можно создать web-приложение, desktop и даже мобильное приложение! Также с 2014г преподаю курсы по web-разработке в Новосибирске, с 2019 года – на этом сайте.
- Влад Тарасов. Занимаюсь фронтенд-разработкой с 2017 года. Работал в Mail.ru над такими проектами как Почта, Календарь, Задачи. Сейчас работаю в Яндексе. Иногда делаю доклады. Также активно занимаюсь обучением стажеров/команд студентов в Яндекс.
Спойлер: Что говорят о курсе участники?
Мы занимаемся обучением с 2007 года. За это время у нас обучились тысячи разработчиков из разных стран и компаний. Все отзывы являются честными. Мы не модерируем их.

Курс регулярно обновляется. Все отзывы относятся к последней версии курса.
Спойлер: Гарантия
- Если объяснения будут вам непонятны
- Если курсы не дадут вам новых знаний и умений
- Если вы не сможете подключиться к системе онлайн-обучения
Для этого достаточно не позже окончания первой недели курса написать, что именно вас не устраивает, и тогда ваше участие будет прекращено, а вы получите деньги обратно.
Спойлер: Цена курса
Цена курса составляет 23000₽
Спойлер: Продающий сайт
learn.javascript.ru/courses/jsbasic