Все курсы

Продвинутая разработка на "React"

Курс для тех, кто уверенно чувсвтвует себя с React/Redux, и готов попробовать более продвинутые практики, современную экосистему и альтернативные подходы к решению задач.

Программа

Цель курса - научиться эффективно использовать экосистему React. В современном мире есть множество довольно непростых задач, которые повторяются из во многих проектах. Мы разберем, как решать их быстро, не изобретая собственных велосипедов. Например, научимся использовать redux-saga, тестировать приложения. Познакомимся с GraphQL (Apollo) и построением универсальных (SSR) приложений. А также разберем React Native и альтернативный подход к управлению состоянием - MobX.

В этом курсе мы будем строить мобильное приложение на React Native и админку для него, используя облачную real-time базу данных Firebase. Начнем с веб-интерфейса админки, научимся работать с авторизацией, будем использовать популярные UI библиотеки (react-dnd), разберем redux-saga. Затем построим простое мобильное приложение на React Native, для которого будем использовать MobX.

Курс состоит из 4-х блоков:

  1. Продвинутый Redux.
  2. Экосистема React.
  3. React-Native.
  4. Основы MobX.

Детали программы смотрите далее.

Основные темы программы

Блок 1

Продвинутый Redux:

В современном мире существует достаточно большое количество подходов к построению архитектуры Redux. Некоторые из них очень мощные, но достаточно сложные, поэтому в этом блоке мы изучим их подробно.

  • Redux-Form.
  • Авторизация в React приложениях (backend в Firebase, можно любой другой).
  • Разные подходы к композиции редюсеров, плюсы и минусы.
  • Redux Ducks.
  • Варианты работы с сайд-эфектами: redux-thunk, redux-promise, redux-loop, redux-saga.
  • Работа с сагами, их тестирование.

Блок 2

Экосистема React:

  • Тестирование React-компонент.
  • Drag-N-Drop с react-dnd.

Блок 3

Фреймворки для React:

  • GraphQL, как язык запросов, особоенности и реализация.
  • Apollo, клиент для GraphQL.
  • Построение универсальных приложений, NextJS

Блок 4

React Native:

  • Настройка окружения React Native.
  • Разбор основных принципов и отличий от работы в браузере.
  • Базовые компоненты React Native.
  • Стили для React Native, Flexbox.
  • Навигация с React Navigation.

Блок 5

MobX:

  • Основы MobX.
  • Построение архитектуры приложения.
  • Работа с данными.
  • Подводные камни.
  • Работа с сетью.
  • Пример real-time в MobX и Redux-Saga.

Как проходит обучение?

Раньше мы проводили этот курс в течении месяца, аналогично базовому. Но мы учли особенности программы и аудитории, и теперь проведем его в виде интенсива.

Мы с вами посвятим одни выходные новому материалу, это будет два полных дня, с 10 до 18. В субботу разберем все что касается React в браузере, Redux, Redux Saga. В воскресенье пройдем по экосистеме: Apollo + GraphQL, Universal Apps, React Native + MobX.

У нас с вами будут перерывы и время на работу с вашими вопросами, если у вас есть кейсы, которые хотели бы разобрать - напишите о них заранее.

Результат обучения

  1. Вы можете строить архитектуру приложения выбирая лучший из многих доступных вариантов, не ограничиваясь стандартным путем.
  2. Вы не ограничены Redux-ом: уже умеете использовать MobX, знаете какие еще есть системы, их плюсы и минусы, можете легко в них разобраться.
  3. Вы знакомы с мощными инструментами дла коммуникации с сервером(GraphQL и Apollo)
  4. Вы понимаете, как строить универсальные приложения с серверным рендерингом.
  5. Вы знаете не только сам React, но и множество вспомогательных библиотек, умеете решать стандартные задачи не изобретая велосипедов.
  6. Вы знакомы с React Native, можете строить не только Web, но и Mobile приложения.

Преподаватель

Photo
Роман Якобчук

Программирование люблю и практикую с детства, даже затрудняюсь сказать, какой именно в нём опыт) C React работаю практически с момента открытия фреймворка для публики.

С 2017 года руковожу Front-end гильдией в Киевском R&D центре Wix. Наш основной стек – это React, и у нас он используется в нескольких десятках проектов, с очень разной инфраструктурой. Мы создаем на его основе от библиотек базовых компонент, до сложных приложений с серверным рендерингом и ленивой загрузкой.

Знаю с десяток языков, но в последнее время активно пишу только на JavaScript.

Выступаю на конференциях, провожу мастер-классы, курсы и консультации по фронтенд-разработке.

Что говорят о интенсиве участники

Дополнительная информация

    • Знание JavaScript (ES2017) и знакомство с CSS/HTML.
    • Знание основ программирования (ООП, паттерны JS, знание нескольких архитектурных паттернов).
    • Знание основ React и экосистемы: redux, immutable, react-router@4/5, reselect, connected-react-router. Если вы прошли наш основной курс по React, то этого достаточно.

    Желательно понимание английского языка. По ходу курса будут предлагаться для дополнительного ознакомления материалы на английском, всё самое важное мы пройдём на занятиях, но желательно, чтобы вы могли их понять.

  • Windows, Mac и Linux поддерживаются полностью.

    Для онлайн-общения желателен интернет от 256kb/s.

Комментарии

перед тем как писать…
  • Если вам кажется, что в статье что-то не так - вместо комментария напишите на GitHub.
  • Для одной строки кода используйте тег <code>, для нескольких строк кода — тег <pre>, если больше 10 строк — ссылку на песочницу (plnkr, JSBin, codepen…)
  • Если что-то непонятно в статье — пишите, что именно и с какого места.