Курс предназначен для для разработчиков уровня Junior и Middle, которые имеют общее представление и опыт работы с Web и хотят узнать больше о мире современного JavaScript. В рамках курса вы рассмотрите ключевые особенности JavaScript - замыкания, особенности ООП и SOLID в JS, функционального и реактивного программирования, Promises и другие возможности ES6, Event Loop, а также разберёте DOM API, Ajax и события в рамках разработки в браузере, и, конечно, прокачаете навыки в HTML и CSS. Научитесь писать код на диалектах JavaScript, таких как TypeScript и JSX. Помимо разработки клиентской части в браузере, вы также будете использовать серверную платформу NodeJS и её окружение. Изучите популярный фреймворк Angular с реактивными возможностями RxJS, а также библиотеки для написания web-приложений - ReactJS, Redux и современные подходы к разработке UI, такие как Polymer и набирающий звёзды Vue. Вы будете собирать проекты для production с помощью Webpack, хранить данные в MongoDB, использовать TDD подход и писать тесты на различных фреймворках и уровнях.
По окончании курса вы сможете: Понимать принципы работы современных JavaScript фреймворков и библиотек Применять паттерны проектирования (Event Loop, Flux, Immutable, Virtual DOM, Dependency Injection, Observables) Знать подходы при проектировании, организации, контроля состояния и тестирования серверных и клиентских приложений Выбирать подходящие инструменты для проекта Тестировать проект unit-тестами на разных уровнях Создавать веб-приложения с использованием современных технологий
Содержание: 01. Введение в курс 02. JavaScript. Работа с браузером 03. Основные концепции Node — Modules, Events, Errors 04. Стандартная библиотека Node — EventLoop, Streams, HTTP 05. Пакетный менеджер NPM и возможности package.json. Node Best Practices 06. Express — Web-сервер на JS, Стек MEAN, MongoDB 07. Построение Rest API, TDD и Unit-тестирование с Jest 08. Основы React и JSX 09. Компоненты React. Lifecycle React-компонент, state и props 10. Состояние приложения. Flux и Redux 11. Routing в React. Оптимизация приложения 12. Основы Vue 13. Компоненты, шаблонизатор и формы 14. Routing и модели данных 15. Advanced Vue 16. Обзор Polymer 17. Всё суть компоненты 18. Специфика построения приложений на Polymer 19. Введение в Angular 20. Введение в Typescript 21. Компоненты и дерективы 22. Передача данных. Сервисы 23. Observables 24. Состояние приложения 25. Создание и управление формами в Angular 27. Сборка приложений для Production 28. Обзор пройденных технологий