React Native 0.64

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

Гермес для iOS

Hermes - это движок JavaScript, специально созданный для React Native, который обеспечивает более быстрое время запуска, меньшее использование памяти и меньшие размеры приложений. В совокупности эти преимущества предоставляют пользователю более быстрый и легкий способ начать работу с вашим приложением, особенно на старых устройствах, на которых может не хватать памяти или места для хранения. Hermes как движок существует с момента его дебюта на Chain React 2019, но ранее он был доступен только для использования на Android. Теперь, с версией 0.64, Гермес можно включить на устройствах iOS.

В ходе прямого сравнения, проведенного командой инженеров Facebook приложения React Native, использующего Hermes, с другим приложением без движка Hermes, мы выявили 3 ключевых улучшения, которые, как мы видим, оказывают немедленное влияние на производительность приложения:

  • Время до взаимодействия было более чем на 2 секунды быстрее
  • Использование памяти было почти на 50 МБ меньше
  • Приложение стало меньше почти на 20 МБ

Поддержка прокси Hermes

Со всеми упомянутыми выше улучшениями для приложений, работающих под управлением Hermes, некоторые приложения не могли использовать Hermes из-за проблем совместимости с популярными библиотеками (например, react-native-firebase и mobx). В этой версии в Hermes теперь добавлена ​​поддержка прокси, чтобы эти приложения могли активировать Hermes и получать все связанные с этим преимущества в производительности.

Отслеживание производительности с помощью Hermes

Раньше для проведения глубокого анализа производительности вашего приложения требовались дополнительные плагины или библиотеки. Теперь разработчики, использующие React Native с помощью Hermes, могут легко проверить эти данные на вкладке «Производительность» в Chrome DevTools, чтобы убедиться, что приложение всегда работает с ожидаемой высокой скоростью. Это также позволяет разработчикам упростить отладку любых проблем с производительностью и изолировать области приложения, которые могут нуждаться в дополнительной оптимизации.

Встроенные требования включены по умолчанию

Согласно блогу выпуска React Native:

Inline Requires - это параметр конфигурации Metro, который сокращает время запуска за счет задержки выполнения модулей JavaScript до их использования, а не при запуске.

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

Готовы увидеть преимущества React Native 0.64 в своем приложении? В Echobind мы здесь, чтобы поддержать вас на любом этапе жизненного цикла разработки, свяжитесь с нами, чтобы получить помощь в обновлении вашего приложения React Native.

Биография автора

Доминик - инженер-программист в Echobind, специализирующийся на React Native, NextJS и GraphQL. Вне работы он смотрит футбол, исследует PNW со своей семьей или слишком увлекается каким-нибудь случайным видом спорта, например, велоспортом или настольным теннисом.