Если вы — веб-разработчик, который хочет создавать мобильные приложения, но не хочет тратить время на изучение Java/Kotlin (для Android) или Objective C/Swift (для iOS), то вам отлично подойдет React Native.
React Native является ответвлением React — популярного JavaScript-фреймворка для разработки веб-приложений. Он позволяет создавать нативные Android и iOS приложения в JavaScript.
В отличие от Ionic и Cordova, поддерживающих принцип write once run everywhere, но не позволяющих создавать нативные приложения, React Native может преобразовывать ваш код в нативный, особенно если речь идет о графическом интерфейсе.
То есть, вместо запуска программы в браузере или WebView (для Ionic и Cordova) вы можете просто написать нативное приложение для Android и iOS в JavaScript.
Это огромный плюс для JavaScript-разработчиков, мечтающих создавать свои приложения.
Популярность React Native с Redux стремительно растет. Поэтому если вы ищите работу в сфере разработки мобильных приложений — подобные знания станут ценным пунктом в резюме.
React Native предоставляет отличное решение для разработки мобильных приложений за тот же отрезок времени, который требуется для создания приложения на iOS или Swift.
5 лучших курсов для изучения React Native
Если вы уже читали мои статьи, то знаете про мою трехступенчатую формулу для изучения новой технологии или фреймворка.
Она помогла мне освоить множество нового, в том числе Git, Spring и Hibernate. И чтобы прокачать свои технические навыки в 2018 году, я пользуюсь той же формулой для изучения Kotlin, Docker, и анализа данных.
Как правило, мое обучение начинается с качественного онлайн-курса, в котором разъясняются основы технологии и дается небольшой практический опыт по части настройки и создания простейших приложений.
Как только основы поняты, я иду дальше и берусь за книгу с подробным объяснением того же материала и добавлением нового.
После прочтения книги и прохождения онлайн-курса, я приступаю к созданию настоящего приложения. Параллельно проверяю свои практические навыки и заполняю пробелы в знаниях.
Вот здесь-то и начинается основное обучение. Если мне нужно узнать что-то новое, то я снова и снова возвращаюсь к пройденному курсу или прочитанной книге.
Давайте начнем с подборки лучших курсов по изучению React Native и разработке нативных мобильных приложений на JavaScript.
1. The Complete React Native and Redux Course
Это один из лучших курсов по изучению React Native и Redux. Он поможет вам быстро освоить React Native и начать с ним работать, а также научит необходимым знаниям, которые потребуются для понимания и создания React-компонентов для мобильных устройств.
Курс начинается с объяснений основ React: JSX, props (свойства), состояния и обработка событий. Так что даже если вы совершенно не знакомы с фреймворком React — можете смело начинать с React Native. Курс не только поможет вам разобраться в основах React, но и даст определения терминам и концепциям Redux — еще одного популярного JavaScript фреймворка для создания интерфейсов.

Вы научитесь быстро создавать прототипы и развертывать приложения в Apple Store и Google Play.
Итого: перед вами один из наиболее полных курсов по быстрому изучению React Native и Redux.
2. React Native: Advanced Concepts
Еще один курс по React Native от того же автора — Стивена Грайдера, который позволит вам поднатореть в более сложных темах: анимации, картах, уведомлениях, навигации и т.д.
Курс научит вас теоретическим и практическим основам реализации сложных анимационных систем и загрузки приложений на новой платформе Expo. Кроме того, вы освоите пользовательскую навигацию в React-Navigation.
А еще научитесь аутентификации через Facebook OAuth, вовлечению пользователей автоматическими push-уведомлениями, увеличите поток аутентификации в приложении с одноразовыми паролями из Twilio и повысите надежность приложения с оффлайн сохранностью данных.
Итого: выбирайте оба курса этого автора и становитесь профи в React Native за 1–2 месяца.

3. React Native — The Practical Guide
Классный курс по React Native от Udemy. Мне действительно понравился способ подачи материала для веб-разработчиков. Автор курса рассказывает, как создавать качественные нативные приложения для мобильных с помощью тех же веб-технологий, которыми вы пользуетесь при написании отзывчивых веб-приложений.
Здесь вас научат создавать собственные приложения на React Native, размещать их в Google Play Store и Apple App Store, а также с головой погружаться в экосистему React Native.
Еще вы узнаете о теоретических аспектах React Native, его ключевых составляющих, а также научитесь созданию отзывчивых дизайнов, которые отлично работают на устройствах любых размеров. Вам покажут, как анимировать приложения на React Native, как устроена навигация, как пользоваться картами и камерой и т.д.!
Итого: это практический и современный курс для самостоятельного изучения React Native с интересной подачей материала.

4. Create Your First React Native App
Ударный курс по созданию собственного приложения на React Native за пару дней. Если вы считаете себя любознательным разработчиком, которому больше по душе действие, а не чтение книг, то этот курс создали специально для вас.
Его цель — предельно быстро поставить вас на ноги и научить работе с React Native, а также рассказать о ключевых аспектах разработки на React Native.
Курс не является всеобъемлющим источником знаний. Он, скорее, рассчитан для быстрого старта и создания прочной практической базы.
Итого: отличный курс для желающих поработать с React Native и разработчиков в поисках альтернатив Cordova и Ionic.

5. Build an app in less than 1 hour using React Native
Иногда, если я хочу поскорее познакомиться с какой-то технологией, то просто сажусь и начинаю писать в ней приложения, параллельно изучая нужную мне информацию.
Данный курс как раз и рассчитан на такую модель поведения и обещает научить вас принципам работы React Native в процессе создания прикольного приложения в стиле Tinder.
Здесь вы научитесь JSX — популярному языку разметки React, его сочетанию с HTML и JavaScript, а также разбивке крупных приложений на меньшие компонентные единицы с повторным использованием их в коде.
Вас познакомят с принципами работы свойств и состояний. И самое главное — вы поймете, что это, чем они занимаются, и зачем вообще нужны.

Итого: отличный стартовый курс для погружения в чудесный мир разработки мобильных и десктопных приложений.
Заключение
Это все, что я могу сказать о лучших курсах по React Native и разработке мобильных приложений для Android и iOS, используя JavaScript.
React Native — отличный фреймворк, который сокращает время обучения и написания продукта, а также позволяет быстро создавать и распространять приложения вашей мечты.
В отличие от Ionic и Cordova, здесь вы действительно сможете создавать нативное приложение с нативными компонентами графического интерфейса.
Итого: React Native — это самый быстрый способ создания нативных мобильных приложений на iOS и Android. Он заслужил доверие таких гигантов, как Facebook, Instagram, Uber, Airbnb и др. Если в 2018 году вы решили изучить нечто новое, то React Native, безусловно, станет отличным выбором.
Перевод статьи javinpaul: Top 5 React-Native Courses for Mobile Application Developers