Все курсы

Курс "JavaScript/​DOM/​Интерфейсы" для новичков

Курс для тех, кто не разрабатывал на JS и имеет мало опыта в профессиональном программировании. Вы научитесь создавать браузерные компоненты на JavaScript, разбираться в коде и будете готовы к освоению фреймворка.

Программа

Курс состоит из трёх частей:

  1. Первая часть позволяет хорошо разобраться в языке JavaScript, получить знания и навыки написания JavaScript-кода, соответствующего современным стандартам.
  2. Во второй части мы разберем, как работать с браузером, разрабатывать динамические элементы интерфейса, которые будут взаимодействовать с пользователями.
  3. В третьей части мы напишем полноценный проект - онлайн-магазин, причем большую часть работы сделаете вы сами, чтобы сформировались реальные навыки разработки на JavaScript.

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

Основные темы программы

Первая часть курса

  1. Основной JavaScript.

    Здесь мы изучим сам язык, его конструкции и особенности, которые позволяют "разговаривать" на JavaScript коротко, понятно, а главное - без ошибок.

    • Инструментарий разработки и отладки, полезные приёмы использования.
    • Типы данных и их особенности в JS.
    • Основные структуры данных и методы работы с ними (массивы, объекты).
    • Функции, их особенности в JS.

Вторая часть курса

  1. Документ, генерация интерфейса.

    Здесь мы учимся работать с документом, решать всевозможные задачи в браузере.

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

    • Основы и тонкости работы с различными событиями для решения основных интерфейсных задач.
    • Паттерн "делегирование", оптимизация производительности и архитектуры, чтобы интерфейсы не тормозили.

По окончании второй части вы можете создавать интерфейсные компоненты, но нужно больше практики.

Третья часть курса

  1. Проект.

    • Основы компонентной архитектуры
    • Node.JS как средство запуска полезных утилит.
    • Организация скриптов, стилей и других компонентов проекта на диске.
    • Инструменты для сборки проекта (webpack, плагины).
  2. Сетевая коммуникация, AJAX

    • Взаимодействие с сервером, получение и отправка данных.
  3. Куда дальше?

    • Обзор фреймворков (AngularJS, React.js), куда двигаться дальше.

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

Как проходит обучение?

Время обучения: 1.5 месяца, 10 встреч порядка 1.5-2 часов с дополнительным собранием в начале курса, плюс видеокурс за неделю до начала занятий.

За полтора месяца мы планируем освоить очень многое.

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

  1. До начала курса вы получаете вводный видео-курс. К основному курсу необходимо с ним ознакомиться. Там раскрыты самые базовые темы, которые можно дать в таком формате. Это введение нужно, чтобы мы на занятиях не разбирали ну уж совсем простые темы (но вы сможете задавать вопросы по ним, если будут, в том числе и до начала курса).
  2. Далее, к каждому занятию выдаются материалы для освоения и задачи. Если это текст - читаете, если видео - смотрите в удобное для вас время. Делаете задачи.
  3. Онлайн-встречи проходят два раза в неделю, на них преподаватель дает обратную связь по вашим решенииям, смотрим как можно сделать лучше. Также преподаватель отвечает на вопросы, разбираются важные и тонкие моменты, на которые следует обратить внимание в материале, который был выдан на дом, а также разбираются сложные темы. Продолжительность 1.5-2 часа, в зависимости от темы и количества вопросов.
  4. Между занятиями доступен чат группы, где можно посоветоваться с другими студентами и задать вопросы преподавателю, цель которого – помочь вам во всем разобраться и научить писать хороший код. Главное, чтобы вы сами этого хотели.

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

Результат обучения

  1. Вы умеете создавать компоненты интерфейса на JavaScript.
  2. Вы можете разобраться в чужом коде.
  3. Вы готовы к освоению фреймворков и Node.js.
  4. Мы идём от основ и до довольно-таки сложных штук. Успешное прохождение обучения гарантировано в том случае, если вы будете регулярно заниматься и делать домашнее задание.

Гарантия

  • Если объяснения будут вам непонятны
  • Если курсы не дадут вам новых знаний и умений
  • Если вы не сможете подключиться к системе онлайн-обучения

…то вы сможете получить деньги назад.

Для этого достаточно не позже окончания первой недели курса написать, указав причину из этого списка и что именно вас не устраивает, и тогда ваше участие будет прекращено, а вы получите деньги обратно, удобным для вас способом.

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

Photo
Илья Бурлак

В разработке около 10 лет, последние 6 лет разрабатываю только web-приложения на Javascript.

Долгое время работал в компании Mail.Ru, на позиции Frontend Team Leader. После этого работал руководителем команды на проекте JivoSite, сейчас занимаю должность техлида в компании Qleanlabs.

Как мне кажется, хороший разработчик – это тот, который решает просто сложную задачу и делает это так, что его изменения легко поддерживать в будущем.

Photo
Станислав Долгачёв

Живу фронтенд-разработкой c 2014 года. За это время прошёл путь от начинающего до ведущего разработчика в компании EPAM.

Также являюсь лидером фронтенд-сообщества внутри компании, где помогаю готовить доклады и веду встречи по фронтенд. Последние два года занимаюсь развитием и обучением коллег как лектор и ментор.

Дополнительная информация

  • Для участия в этом курсе необходимо знакомство с HTML/CSS.

    Знание JavaScript не требуется. До начала обучения выдаётся вводный видеокурс по основам языка, особенно полезный для тех, кто начинает с нуля.

  • Windows, Mac, Linux поддерживаются.

    Для онлайн-общения желателен интернет от 256kb/s.

Комментарии

перед тем как писать…
  • Если вам кажется, что в статье что-то не так - вместо комментария напишите на GitHub.
  • Для одной строки кода используйте тег <code>, для нескольких строк кода — тег <pre>, если больше 10 строк — ссылку на песочницу (plnkr, JSBin, codepen…)
  • Если что-то непонятно в статье — пишите, что именно и с какого места.