Переход на React Native: экономия и прирост производительности

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

Профиль клиента

Наш клиент — компания, разрабатывающая no-code платформу, предназначенную для издателей, владельцев медиа-контента и OTT-провайдеров.

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

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

Решение

Поскольку изначально платформа была построена с использованием нативных приложений, перед СКЭНД стояла задача найти альтернативное решение. Мы предложили перейти на React Native, основываясь на следующих преимуществ:

  • Кроссплатформенность: React Native позволил создать единую единую кодовую базу для мобильных приложений на iOS и Android, что автоматически снизило затраты на кроссплатформенную разработку мобильных приложений.
  • Горячая перезагрузка: Эта функция ускорила процесс разработки и позволила мгновенно увидеть результат вносимых изменений.
  • Обширная экосистема: Мы получили доступ к множеству готовых библиотек и инструментов, а также поддержку активного сообщества и крупных спонсоров, таких как Microsoft, Expo, Callstack и Infiniti Red.
  • Производительность: Благодаря использованию виртуального DOM, нативных компонентов, JavaScript Bridge и Hermes, нам удалось сохранить производительность, близкую к уровню нативных приложений.

В качестве основного метода перехода на React Native мы выбрали гибридный подход в мобильной разработке — то есть поэтапную замену нативных экранов и модулей на компоненты RN. Чтобы новые компоненты могли взаимодействовать с существующим нативным кодом, мы применили специальный метод — паттерн проектирования «Мост» (Bridge pattern).

Процесс разработки

Процесс перехода включал следующие этапы:

  1. Анализ текущей архитектуры для определения наиболее рационального пути перехода.
  2. Определение списка нативных модулей, которые можно переписать на React Native без потери необходимой функциональности.
  3. Постепенный перенос UI-компонентов и логики.
  4. Тестирование совместимости API для подтверждения согласованности между новыми компонентами React Native и существующими API.
  5. Интеграция сторонних SDK.

Основные преимущества миграции

Миграция мобильных приложений на React Native обеспечила ряд важных преимуществ:

  1. Тестирование на каждом этапе сделало переход плавным и безопасным.
  2. Оптимизированные нативные модули сохранили скорость работы приложения.
  3. React Native предоставил достаточную гибкость для адаптации к возможному масштабированию платформы.
  4. Параллельная работа над iOS и Android ускорила выпуск новых функций и обновлений.

Результат

Внедрение React Native серьезно улучшило платформу. Объединение разработчиков iOS и Android в одну команду позволило снизить затраты на поддержку мобильных приложений и значительно упростить техническое обслуживание.

Единая кодовая база ускорила выпуск мобильных приложений. Теперь платформа стала универсальной и легко адаптируется для работы на Smart TV и веб-платформах. А благодаря активному сообществу в Facebook, она будет оставаться актуальной и открытой для будущих изменений.

Нуждаетесь в разработке похожего проекта?

Свяжитесь с нами

Мы любим новые проекты! Напишите нам, и мы ответим вам в ближайшее время.

Спасибо, что написали нам! Ваше сообщение было успешно отправлено. Мы обязательно ответим на него в ближайшее время. Пожалуйста, проверьте, получили ли Вы от нас письмо-подтверждение на указанную Вами почту.