[Skillbox] Онлайн-курс JavaScript [Тимофей Тиунов]

250

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

Кому подойдёт этот курс

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

Чему вы научитесь

  • Писать код на JavaScript
    Изучите синтаксис, области применения и лучшие практики JavaScript.
  • Работать с JavaScript и инструментами разработчика
    Узнаете, как работать с системой контроля версий Git, менеджером пакетов npm и отладчиком в браузере.
  • Использовать разные подходы к разработке
    Научитесь писать код в императивном, объектно ориентированном и функциональном стилях.
  • Использовать JavaScript в браузере
    Научитесь использовать JavaScript для взаимодействия с сервером, работать с DOM и событиями.
  • Прокачать soft skills разработчика
    Узнаете, какие soft skills и личностные качества нужны junior-разработчику в различных компаниях, сможете развить их.

  • Введение. Узнаете о языке JavaScript, областях его применения и инструментах разработчика. Напишете свою первую программу на JavaScript. Освоите основы системы контроля версий Git.
  • Научитесь использовать переменные и работать с числами: освоите математические операторы и операторы сравнения, встроенные функции для работы с числами и объект Math. Узнаете особенности работы с дробными числами.
  • Узнаете о строковом и логическом (boolean) типах данных, сравнении простых типов данных, условных операторах if/else/switch, тернарном операторе, основах булевой алгебры.
  • Научитесь работать с массивами, циклами for, while, do-while, операторами break и continue.
  • Узнаете, зачем нужны функции, как их писать, что такое аргументы и возвращаемое значение функции. Поймёте, что такое значение null и undefined.
  • Научитесь работать с объектами JavaScript: создавать их, объявлять свойства, сравнивать объекты, делать циклы по свойствам, использовать оператор typeof.
  • Узнаете, что такое константы, ключевые слова const и var, области видимости, замыкания, и научитесь их использовать.
  • Освоите различные преобразования типов данных JavaScript, узнаете о неявных преобразованиях и нестрогих сравнениях.
  • Научитесь работать с DOM — объектной моделью HTML-документа, объектами window, document, деревом узлов DOM.
  • Освоите работу с событиями и пользовательским вводом. Узнаете, что такое событие и какие они бывают, научитесь создавать обработчики событий. Узнаете о всплытии и погружении событий, preventDefault, stopPropagation.
  • Узнаете, какие soft skills нужны разработчику, каких junior-разработчиков ищут разные компании.
  • Научитесь работать с модулями JavaScript, import и export. Узнаете, почему важно разделять код на модули, когда стоит это делать, какая структура должна быть у проекта.
  • Освоите работу с менеджером пакетов npm. Узнаете, что такое package.json, для чего нужны команды npm init, npm install, в чем разница между dependencies и devDependencies, научитесь использовать версии пакетов и правильно обновлять проект.
  • Узнаете, как работают Event Loop, setTimeout/Interval, clearTimeout/Interval, как связаны события и Event Loop и научитесь работать с Promise.
  • Научитесь создавать методы объектов и прототипов. Узнаете, как создавать классы и работать со свойствами, поймёте, как использовать контекст вызова и this.
  • Узнаете, какие есть подходы к тестированию и когда их использовать: модульное тестирование, TDD, e2e, тестирование на основе снэпшотов, на основе скриншотов. Научитесь писать тесты.
  • Освоите работу с ошибками, конструкции try/catch/throw/finally, window/process error event.
  • Научитесь взаимодействовать с сервером с помощью fetch API, передавать параметры запроса, отлаживать запросы в инструментах разработчика, делать асинхронные запросы с помощью async/await.
  • Научитесь работать с событиями мыши, клавиатуры, страницы, touch-событиями, Drag’n’drop, событиями загрузки ресурсов. Узнаете о взаимодействии с audio/video и синхронизации с CSS-анимациями и переходами.
  • Узнаете о том, что такое ООП, и его основных принципах: абстракция, инкапсуляция, наследование, полиморфизм, — и как они реализуются в JavaScript.
  • Научитесь работать с методами массивов и строк, узнаете о функциональном подходе к написанию кода и его элементах: рекурсии, чистых функциях. Узнаете, когда применять функциональный подход.
  • Браузерная космическая игра

Автор: Тимофей Тиунов — Skillbox
Системный архитектор Goods.ru
10 лет занимается веб-разработкой во всех её проявлениях. Налаживал процессы DevOps, занимался настройкой серверов, создавал серверные приложения, руководил командами разработки. Работает системным архитектором в Goods, отвечает за frontend в компании.