Стоимость курса
24 255 рубЗаказать
Цели курса:
По окончанию курса слушатели смогут самостоятельно разрабатывать клиентские ReactJS приложения с использованием библиотек Redux и функций HooksАудитория
Веб-разработчикиОт слушателя требуется
Знание основ JavaScriptСодержание курса
- Развертывание рабочего стенда для работы с микро-сервисами, представленными, приложениями в технологиях JEE, Python, NodeJS, Postgresql, будем использовать этот стенд для всей разработки клиентской части - ReactJS - время 10 минут.
- Эволюция развития веб приложений. От запроса - ответа, к сервлетам и feces технологиям сервера, к технологиям разработки клиентских приложений React, Vue, Angular. Введение в SPA приложения. Что такое реактивное приложение. Виртуальный DOM приложения.
- Подготовка рабочей среды WebStorm для работы с ReactJS, подключение дополнительных библиотек в локальную песочницу.
- Создание минимального React приложения, утилита create-react-app, анатомия и внутренняя архитектура каталогов, React объект - как точка входа в приложение.
- Синтаксический сахар - React-JSX для функции createElement. Спецификация типов элементов, область видимости и нотации JSX. Правила именования. Свойства JSX элементов и литералы.
- React компоненты - классы или функции, что выбрать. Props (свойства) и состояние (state). Описание и использование событий в функциональных и классовых компонентах. Методы жизненного цикла компонента. Этапы формирования и обновления виртуального DOM. Устаревшие методы - в несколько слов.
- Использование функции fetch для доступа к микро-сервисам стенда. Описание прокси для сервера разработки. Авторизация и аутентификация клиентского приложения на сервере. Обработка ошибок сервера на стороне клиентского приложения. Выстраивание цепочки выполнения запросов к серверу в единый промис на конкретных примерах микро-сервисов. Построение готового клиентского приложения с обработкой отношения мастер-деталь, изменением данных в базе данных и формированием отчетов.
- Неудобства работы с локальным хранилищем в React, изолированность хранилища и принятие специальных мер для обновления виртуального дома. Redux снимает эти проблемы.
- Установка Redux, две библиотеки, создание структуры хранилища в файловой системе - общие принципы.
- Назначение reducer, базовая функция.
- Инициализация хранилища. Механизм диспетчеризации в хранилище, создание и использование механизмов обновления данных в хранилище. Возврат данных из хранилища.
- Подписчики на состояние хранилища.
- Передача состояния в свойства компонент - Provider, автоматизация передачи необходимых свойств из хранилища в компоненты - назначение функции mapStateToProps и mapDispatсhToProps.
- Функция обертка, или функция верхнего порядка, которая возвращается функцией connect - для связи компонента с хранилищем и механизмами его обновления.
- Все эти теоретические предпосылки разбираются на конкретном примере работы с серверной частью стенда. Разбирается пример построения клиентского приложения, где обрабатываются таблицы в отношении мастер-деталь.
- Использование состояния приложения без реализации классовой архитектуры - это функции Хуки. Добавление состояния к функциональному компоненту - useState вместо this.state. Правила чтения и записи состояния. Виртуальный DOM отслеживает состояние.
- Побочные эффекты компонента и хук useEffect, получение данных из микро-сервиса и обновление состояния, улучшение производительности useEffect с организацией наблюдения за переменными состояния.
- Использование контекста (хук useContext) для получения доступа к свойствам в родительском