Все курсы

Курс по разработке мобильных приложений на React Native

Курс по разработке мобильных приложения для iOS/Andriod при помощи React Native.

React Native

Цели курса

  • Научить создавать мобильные приложения на iOS и Android с помощью фреймворка React Native.
  • Познакомить с необходимыми библиотеками для работы над коммерческими проектами.
  • Дать практический опыт в разработке приложения.

Как организовано обучение?

Данный курс проводится по заявкам. Если он вас интересует - запросите уведомление на открытие записи.

Курс идёт примерно 1.5 месяца.

До начала обучения: Git/Guthub (если надо)

Мы будем использовать систему Git/GitHub для обмена исходным кодом, так делает большинство проектов. Для тех, кому это в новинку - дадим крэш-курс и поможем разобраться.

Онлайн-занятия с преподавателем 2 раза в неделю

Занятие проходит в формате вебинара. Запись занятия доступна через 15 минут после окончания. Вы также сохраняете доступ к записям после окончания курса.

Каждое занятие идёт полтора-два часа.

Домашние задания, обратная связь по ним

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

Чат

Между занятиями доступен групповой чат для общения и вопросов преподавателю.

Курсовой проект

На этом курсе мы делаем курсовой проект: сервис заказа еды. Большую часть кода для проекта вы напишете сами.

Результат

Будете уметь создавать приложения и под iOS, и под Android.

Узнаете основные подходы построения интерфейсов в React Native.

Научитесь использовать принципы React, которые лежат в основе архитектуры React Native - хуки и архитектуру Redux.

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

Программа курса

Занятия проходят онлайн два раза в неделю.

Собрание

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

Основы построения интерфейсов в React Native

Основные элементы пользовательского интерфейса в React Native: Text, View, Button, TouchableOpacity, Image и стили для них.

Основы вёрстки на React Native.

Создаём приложение в тестовой среде.

Организация компонентов на экране

Продолжаем изучать вёрстку на React Native, используем Flexbox и FlatList.

Создаём меню блюд для приложения.

Навигация в приложении

Научимся добавлять в проект библиотеки, ставим React Navigation.

Делаем навигацию, поддержку нескольких экранов, кнопки туда-обратно с помощью Stack Navigator и TabNavigator.

Реализуем взаимодействие между экранами, передачу данных.

Боевая среда, сравнение Expo и React Native

Создаём проект с нуля локально.

Знакомимся с работой симуляторов Android и iOS.

Добавим шрифты и иконки в проект.

Жизненный цикл компонента

Знакомимся с классовыми компонентами и методами их жизненного цикла.

Используем хуки useState и useEffect при вводе данных, изменении количества товаров в корзине, загрузке экрана.

Ввод данных с TextInput.

Каникулы

Отдых, повторение, следующее занятие - через неделю.

Запросы на сервер

Использование библиотеки axios для HTTP-запросов на сервер (вместо fetch).

Использование Postman для отладки запросов.

Библиотека для кеширования запросов React Query.

Загрузка каталога продуктов в приложение с сервера.

Полезные хуки, создание своих хуков

Продолжаем работать с хуками, изучим новые:

  • useReducer
  • useMemo
  • useCallback
  • useNavigation

Создадим корзину для заказа в приложении.

Redux для управления состоянием приложения

Что такое Redux, для чего он нужен, как его использовать.

Библиотека для упрощенной работы с Redux – redux toolkit.

Переделка архитектуры приложения на Redux.

Сохранение данных между перезапусками приложения с помощью redux persist.

Сохранение корзины заказа в приложении между запусками.

Введение в redux saga.

Анимация

Инструменты создания анимаций в приложении:

  • Animated и LayoutAnimation в react-native
  • react-native-animatable
  • lottie-react-native
  • введение в react-native-reanimated

Иконки, стартовый экран, сборка и релиз проекта

Сборка курсового проекта, добавление деталей (иконка, стартовый экран).

Как выкладывать приложение в магазин (Google Play, App Store).

Функции телефона

Использование функций телефона:

  • Звонки.
  • Открытие приложений по ссылке.
  • Механизм share - поделиться с друзьями.
  • Работа с камерой и галереей.

Что еще нужно знать разработчику мобильных приложений?

Полезные библиотеки.

  • Пуши от Firebase.
  • Возможности Firebase.
  • Карты.

Ответы на вопросы, куда двигаться дальше.

Курсовой проект

Приложение для заказа еды.

Предварительные требования

  • Знакомство с HTML/CSS: верстать макеты не понадобится, но основные теги, позиционирование, margin/padding надо знать.
  • Знание современного JavaScript.
  • Интернет 256kb/s или быстрее для видео.

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

Photo
Мария НащанскаяВедёт курс с 29 сентября 2022

Разрабатываю с 2009 года, мобильные приложения с 2014 года. Работала в компаниях KODE, Неолант, SilverWiz, Mediapark.

Много лет помогаю коллегам и начинающим программистам освоить мобильную разработку. С 2019 активно обучаю других разработке мобильных приложений с React Native.

Гарантия

  • Если объяснения будут вам непонятны
  • Если курсы не дадут вам новых знаний и умений
  • Если вы не сможете подключиться к системе онлайн-обучения

…то вы сможете получить деньги назад.

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

Для компаний

У нас большой опыт работы с самыми разными компаниями: как маленькими, так и IT-гигантами.

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

Физическим лицам даём справку об оплате, если нужна компании для компенсации расходов и документы для налогового вычета: детали для РФ.

Подписаться на уведомления по курсу

Набор на этот курс открывается по заявкам. Вы можете запросить уведомление:

Мы рассылаем уведомления только когда вы их запрашиваете, вы можете отказаться в любой момент. Подписываясь на рассылку, вы соглашаетесь с политикой конфиденциальности. Мы не передаём email третьим лицам.

Если остались вопросы – посмотрите в часто задаваемых, напишите на почту help@javascript.ru (ответ обычно в течение дня), а если срочно — задайте по телефону +7-903-5419441.

Комментарии

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