Содержание модуля
- Ключевые концепции JavaScript и настройка окружения для проектов
- Одностраничные приложения (SPA) и архитектурный паттерн MVC
- Объектно-ориентированное программирование (ООП) в JavaScript, прототипное наследование
- Контекст вызова, области видимости, замыкания
- Взаимодействие с сервером
- Модули и структура проектов, пакетные менеджеры
- Возможности ES6+, транспиляция JavaScript-кода
- Асинхронное программирование
- Архитектурные паттерны
- Автоматизация сборки приложений
- Проверка стиля кода и её автоматизация
- Тестирование приложений
- Отладка и профилирование приложений
- Cоздание автодокументации
Ожидаемые результаты обучения
По результатам изучения материалов модуля обучающийся должен:
- Понимать особенности реализации ООП в JavaScript и в частности прототипного наследования
- Понимать области видимости, контекст выполнения кода
- Уметь настраивать оркужение разработки для новых проектов
- Уметь управлять контекстом вызова функций с использованием методов bind, call, apply
- Уметь использовать замыкания
- Уметь использовать средства JavaScript и jQuery для организации взаимодействия с сервером
- Уметь использовать менеджеры пакетов npm и yarn для управления сторонними зависимостями
- Уметь использовать языковые возможности свежих спецификаций ECMAScript
- Уметь настраивать транспиляцию JavaScript-кода с использованием Babel.js
- Уметь использовать промисы и конструкции async/await
- Знать и уметь применять часто используемые паттерны проектирования в JavaScript-приложениях
- Уметь использовать библиотеки Webpack и Broccoli.js для сборки JavaScript-приложений
- Уметь настраивать линтинг JavaSciript-кода с помощью ESLint
- Уметь использовать инструменты отладки JavaScript-приложений
- Уметь писать модульные тесты с использованием тестового фреймворка QUnit
- Уметь генерировать автодокументацию с использованием JSDoc