React Native или не Native?

Димка Реактнативный
react-native-init
Published in
2 min readDec 10, 2019

--

Часто встречаю дискуссии в которых вижу не понимание того как устроен React Native. Многие считают эту технологию подобием Cordova, PhoneGap работающим, через браузер(WebView). Поэтому предлагаю разобраться с этим на конкретном случае.

Например у нас есть библиотека ViroReact

ViroReact — это платформа для разработчиков, позволяющая быстро создавать собственные кроссплатформенные AR / VR-приложения с использованием React Native. ViroReact поддерживает:

  • AR: ARKit и ARCore
  • VR: картон (iOS и Android), Daydream и Gear VR

Платформа состоит из двух основных компонентов:

  • Высокопроизводительный движок 3D-рендеринга cделан на С++
  • Пользовательское расширение React для разработки AR и VR.

Убедится в том, что он сделан на плюсах можете здесь

Эта библиотека есть, в том числе под Java, Objective-C и под React-Native. С ОДНИМ ОБЩИМ ЯДРОМ на С++

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

Нативный слой и слой React, соединены мостом.

Так вот дело в том, что через мост передаются только сообщения для управления нативным слоем, в нашем конкретном случае библиотекой ViroReact, еще раз повторю, что двигатель у которой общий как для Java, Objective-C и React-Native!
Гетеры и сеттеры, что отправляются в нативный слой и приходят от туда — это микро сообщения, а не видео 4K. Это более чем достаточно, чтобы глаз человека не отличал перформанс React Native приложения от сделанного на Java или Objective-C.

Иначе бы React Native не стал бы так популярен, а популярен он как раз потому, что разработчики им довольны и я, в том числе получаю удовлетворение от работы с ним в течении 3-х лет.

--

--

Димка Реактнативный
react-native-init

Он же Димка Креативный, создатель первого в рунете курса по React Native. Активно выступающий за развитие Open Source коммьюнити.