Продвинутый курс по React.JS

Тестовый набор на продвинутый курс по разработке на React.JS, включая React Native, Redux, MobX.

Программа

Этот курс рассчитан на людей с опытом работы на React. Здесь мы будем учиться использовать экосистему React для решения стандартных задач: testing, drag-n-drop, lazy-loading, grids, forms и т.д. Разберем продвинутые варианты композиции редюсеров и работы с сайд-эффектами в Redux, будем работать с redux-saga. Изучим альтернативные подходы к слою бизнес-логики, детально разберем MobX. Научимся строить приложения на React Native и поработаем с real-time на примере MobX и Redux-Saga.

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

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

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

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

Набор в группы

В текущих группах мест нет.

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

На ваш email придёт письмо с информацией о дате и деталях программы.

Стоимость обучения – порядка 250-300$. Время обучения: 1 месяц, точные даты будут при открытии записи.

Этот курс ведёт Роман Якобчук.

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

  • Блок 1
  • Блок 2
  • Блок 3
  • Блок 4

Блок 1

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

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

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

Блок 2

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

  • Тестирование React-компонент.
  • Большие таблицы и списки с react-virtualized.
  • Lazy-loading с redux и react-virtualized.
  • Анимации с react-motion.
  • Drag-N-Drop с react-dnd.

Блок 3

React Native:

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

Блок 4

MobX:

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

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

Курс будет проходить по схеме 1 + 5 + 4, т.е. организационое собрание перед первой встречей. Затем мы с вами пройдем 2 блока (5 занятий), на которых разберем продвинутый Redux и экосистему React, построим админку для нашего приложения. Сделаем каникулы, во время которых вы сможете освоиться с пройденным материалом. На следующих 3-х уроках мы будем создавать мобильное приложение на React Native, с исползованием MobX, настроим коммуникацию с сервером и авторизацию, посмотрим на пример работы с real-time в MobX и Redux-Saga. А последние занятие мы посвятим вашим вопросам и увидим куда развиваться дальше.

На каждом занятии мы изучаем что-то новое. После встречи даётся домашнее задание.

На следующем занятии мы смотрим, что и как получилось решить и как сделать лучше. Чтобы получить от курса максимум результата, нужно не только слушать, но и делать что-то дома, а затем – показывать преподавателю. Так, постепенно, с обратной связью от преподавателя, вы действительно хорошо разберётесь c этими технологиями.

Обратите внимание: это наш первый набор на данный курс. Это значит, что людей будет меньше и мы с вами будем активно общаться по всем материалам. Также мы планируем повысить стоимость этого курса в будущем и сейчас вы можете пройти его дешевле. Однако программа еще не обкатана и после каждого урока я буду просить у вас заполнять форму обратной связи для улучшения программы и ее подачи.

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

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

Системные требования

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

Под Linux онлайн-участие работает, но для просмотра записей занятий нужен Dual Boot в Win/MacOS.

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

Требования к участникам

  • Знание JavaScript (ES2017) и знакомство с CSS/HTML.
  • Знание основ программирования (ООП, паттерны JS, знание нескольких архитектурных паттернов).
  • Знание основ React и Redux.

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

Комментарии

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