Урок 1. Введение в ReactJS: современный Javascript
Знакомство с ReactJS; сравнение с другими технологиями; современный JS; что нового в ES6 и как это использовать; классы, наследования, модули rest/spread, параметры, промисы, модули.
Урок 2. Жизненный цикл React-компонента
ReactComponent, state, componentWillMount и componentDidMount, componentDidUpdate, componentWillUnmount. Вложенность компонентов и props и propTypes. Начало разработки мессенджера.
Урок 3. Продолжаем погружение в React и подключаем UI-библиотеку
Что такое Virtual DOM. Стилизация React-компонентов. Обработка событий. Подключение и использование Material UI.
Урок 4. Роутинг в React: разбиваем мессенджер на чаты
prevState и prevProps. Подключение BrowserRouter. Switch, Route и Link. Как осуществляется роутинг. Хранение чатов и сообщений. Способы отладки React-приложения
Урок 5. Redux. Управление состоянием приложения
Зачем нужен Redux. Схема работы Redux. Reducers и actions. Redux DevTools Extension. Компоненты и контейнеры. Перенос сообщений в Redux.
Урок 6. Redux middlewares, подключение роутера к Redux и хранение данных с помощью Redux-persist
Когда нужно использовать Redux middlewares. Реализация ответа от робота при помощи middlewares. ConnectedRouter. Хранение истории сообщений при помощи redux-persist.
Урок 7. Работа с API
Что такое API. Как работают асинхронные запросы. Кратко о промисах. fetch(). redux-api-middleware. normalizr и schemas. Получение чатов и сообщений по API.
Урок 8. Progressive Web App
Что такое PWA. Почему это актуально. Как работает PWA. Lighthouse. Service-worker. Web App Manifest. Ограничения. Фишки и трюки.