После прохождения курса вы будете уверенно готовить современные веб-приложения. Этот интенсив предназначен для «прокачки» верстальщика до полноценного фронтенд-специалиста, востребованного на рынке. Наша задача — готовить полноценных и востребованных специалистов, готовых работать в веб-индустрии.
Программа:
Раздел 1. ES2015 • Рассмотрим схему работу на интенсиве и узнаем, какие инструменты нам понадобятся. Познакомимся со стандартом ECMAScript 2015, разберём какие проблемы он решает и чем отличается от ECMAScript 5.
Раздел 2. Модули • Познакомимся с понятием модульности и рассмотрим как устроены модули в ES2015. Разберёмся со сборщиками модулей: зачем они нужны, как они работают и как их подключать в проект.
Раздел 3. Тестирование • Узнаем что такое тестирование и как оно помогает в написании хорошего кода. Разберёмся с методиками тестирования: TLD, TDD и BDD. Рассмотрим инструменты для тестирования кода и попробуем их подключить в проект.
Раздел 4. Структуры данных • Узнаем какие бывают структуры данных и для решения каких задач они подходят. Рассмотрим функциональный подход при работе со структурами данных, его преимущества и недостатки.
Раздел 5. Компонентный подход • Поймём, почему нужно отделять данные от представления и почему представление должно содержать как можно меньше логики. В общих чертах познакомимся с паттерном MVC, узнаем что такое View и как его описать с помощью компонентного подхода. Познакомимся с понятием класса и разберём основные принципы ООП.
Раздел 6. Проектирование • Продолжим знакомство с паттерном MVC. Посмотрим на сайт как на цельное приложение и поймём как связывать разрозненные страницы. Разберёмся с понятием состояния приложения и узнаем как его хранить в адресной строке. Решим, где хранить бизнес-логику приложения, написанного в стиле MVC.
Раздел 7. Работа с сетью • Узнаем как работает протокол HTTP, что такое REST и REST API. Разберёмся с объектом Promise и узнаем как он помогает отправлять и обрабатывать HTTP-запросы. Разберём, как проектировать интерфейсы, в которых есть асинхронный код так, чтобы пользователю было удобно.
Раздел 8. Метапрограммирование • Познакомимся с практиками программирования, которые могут быть полезны при создании нетривиальных программ.
Раздел 9. Будущее jаvascript • Узнаем какие изменения планируются в следующих версиях стандарта ECMAScript и как можно попробовать их прямо сейчас. Познакомимся с понятием типизации и узнаем какие способы писать типизированный код есть на фронтенде.