Skillbox

JavaScript

  • Начальный уровень
  • Наставник: Нет
  • Сертификат: Есть
  • Формат: Online
  • Рассрочка: Нет
  • Язык: Русский
  • Осталось мест: не ограничено
Записаться

JavaScript

Вы освоите язык JavaScript и его экосистему в теории и на практике, сможете создавать интерактивные сайты и вырасти как веб-разработчик.

Для кого этот курс?
  • Вы научитесь создавать интерактивные страницы, которые взаимодействуют с сервером, и станете более высокооплачиваемым специалистом.
  • Вы освоите язык JavaScript и его экосистему и сможете начать карьеру JavaScript-разработчика.
Программа обучения
Базовый уровень
  • Введение

    Подробно познакомитесь с языком JavaScript, его областями применения и напишите свою первую программу на этом языке.

  • Переменные и работа с числами

    Освоите математические операторы и операторы сравнения, встроенные функции для работы с числами и объект Math. Узнаете, как работать с дробными числами.

  • Строки, boolean и условные операторы

    Узнаете о строковом и логическом (boolean) типах данных, сравнении простых типов данных. Познакомитесь с условными операторами if/else/switch, тернарным оператором, основами булевой алгебры.

  • Массивы и циклы

    Научитесь работать с массивами, циклами for, while, do-while, операторами break и continue.

  • Функции

    Узнаете, зачем нужны функции, как их писать, что такое аргументы и возвращаемое значение функции. Поймёте, что такое значение null и undefined.

  • Объекты

    Научитесь работать с объектами JavaScript: создавать их, объявлять свойства, сравнивать объекты, делать циклы по свойствам, использовать оператор typeof.

  • Введение в DOM

    Узнаете, что такое объектная модель HTML-документа DOM, объектами window, document, деревом узлов DOM.

  • Введение в DOM. Часть 2

    Разработаете простой таск-трекер, с которым будете работать в дальнейших уроках.

  • Константы, области видимости и замыкания

    Узнаете, что такое константы, ключевые слова const и var, области видимости, замыкания, и научитесь их использовать. Сможете пользоваться debug-инструментом в Google Chrome.

  • Преобразование типов и нестрогие сравнения

    Освоите различные преобразования типов данных в JavaScript, узнаете о неявных преобразованиях и нестрогих сравнениях.

  • Общение с сервером, async/await

    Научитесь взаимодействовать с сервером с помощью fetch API, передавать параметры запроса, отлаживать запросы в инструментах разработчика. Научите свой таск-трекер общаться с сервером.

Продвинутый уровень
  • События браузера, контекст выполнения

    Научитесь работать с событиями браузера при помощи обработчиков, задавать функциям контекст выполнения.

  • Модули

    Научитесь работать с модулями JavaScript. Узнаете, почему важно разделять код на модули, когда стоит это делать, какая структура должна быть у проекта. Разделите на модули свой таск-трекер.

  • Event loop и асинхронная разработка

    Узнаете, что такое Event Loop. Сможете вызывать функция через определенный интервал времени. Поймете, как связаны события и Event Loop и научитесь работать с объектами promise.

  • Обработка ошибок

    Освоите работу с ошибками, конструкции try/catch/throw/finally, window/process error event.

  • Классы

    Узнаете, что такое класс и из чего он состоит и как выстроить иерархию классов. Сможете определять свойства класса

  • События

    Научитесь работать с событиями мыши, клавиатуры, страницы, touch-событиями, Drag'n'drop, событиями загрузки ресурсов. Узнаете о взаимодействии с audio/video и синхронизации с CSS-анимациями и переходами.

  • Экосистема JavaScript и npm

    Узнаете, из чего состоит экосистема JavaScript. Освоите работу с менеджером пакетов npm. Узнаете, что такое package.json, для чего нужны команды npm init, npm install. Научитесь использовать версии пакетов и правильно обновлять проект.

  • Сборка

    Научитесь собирать свой код в готовый к использованию проект. Научитесь оптимизировать код и решать проблему несовместимости.

  • Тестирование

    Познакомитесь с разными подходами к тестированию — модульное тестирование, TDD, e2e, тестирование на основе снэпшотов, на основе скриншотов — и узнаете, когда их стоит использовать. Научитесь писать тесты.

  • База знаний
Знания и навыки, которые приобретете
  • JavaScript
  • Знание ООП
  • Git
  • Npm
  • Знание различных подходов к разработке
  • Владение инструментами отладки
  • Умение тестировать код на JavaScript

Преподаватели

  • Тимофей Тиунов