Перейти к содержанию

React Native

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
React Native
Логотип программы React Native
Тип фреймворк для разработки мобильных приложений
Разработчик Facebook и сообщество
Написана на JavaScript, Java, C++, Objective-C
Первый выпуск 26 марта 2015; 10 лет назад (2015-03-26)[1]
Аппаратная платформа Android, Android TV, iOS, macOS, tvOS, Web и Windows
Последняя версия 0.69.3 (25 июля 2022; 3 года назад (2022-07-25)[2])
Тестовая версия 0.70.0-rc.1 (28 июля 2022; 3 года назад (2022-07-28)[3])
Лицензия MIT License
Ссылки
Сайт reactnative.dev

React Native — это кроссплатформенный фреймворк с открытым исходным кодом для разработки нативных мобильных и настольных приложений на JavaScript и TypeScript, созданный Facebook, Inc.[4] React Native поддерживает такие платформы как Android,[5] Android TV,[6] iOS, macOS,[7] tvOS,[8] Web,[9] Windows и UWP[10], позволяя разработчикам использовать возможности библиотеки React вне браузера для создания нативных приложений, имеющих полный доступ к системным API платформ.[11]

Реализация

Основные принципы работы React Native практически идентичны принципам работы React, за исключением того, что React Native управляет не браузерной DOM, а платформенными интерфейсными компонентами. JavaScript-код, написанный разработчиком, выполняется в фоновом потоке, и взаимодействует с платформенными API через асинхронную систему обмена данными, называемую Bridge.[12][13][14] В 2021 году ожидается замена Bridge на более производительную синхронную модель обмена данными, поддерживающую парадигму zero-copy.

Хотя система стилей (способ конфигурации визуальных свойств элементов интерфейса) React Native имеет синтаксис, похожий на CSS, фреймворк не использует технологии HTML или CSS как таковые.[15] Вместо этого для каждой из поддерживаемых фреймворком операционных систем реализованы программные адаптеры, применяющие заданный разработчиком стиль к платформенному интерфейсному элементу.

React Native также позволяет разработчикам использовать уже существующий код, написанный на других языках программирования — например, Java или Kotlin для Android и Objective-C или Swift для iOS. Также React Native поддерживает интеграцию в уже существующие приложения — например, часть интерфейса мобильного приложения может быть реализована на React Native, а часть — при помощи чисто платформенных средств.

См. также

Примечания

  1. React Native: Bringing modern web techniques to mobile. Дата обращения: 29 апреля 2021. Архивировано 8 августа 2019 года.
  2. 0.69.3.
  3. 0.70.0-rc.1.
  4. Chapter 1. What Is React Native?. oreilly.com. O’Reilly Media, Inc.. Дата обращения: 30 июля 2020. Архивировано 29 апреля 2021 года.
  5. Android Release for React Native. Дата обращения: 29 апреля 2021. Архивировано 8 марта 2021 года.
  6. Building For TV Devices · React Native (англ.). reactnative.dev. Дата обращения: 2 октября 2020. Архивировано 30 июня 2020 года.
  7. React Native for Windows + macOS · Build native Windows & macOS apps with Javascript and React. microsoft.github.io. Дата обращения: 2 октября 2020. Архивировано 4 октября 2020 года.
  8. React Native for Apple TV (англ.) ? (недоступная ссылка). React Native for Apple TV. Дата обращения: 2 октября 2020. Архивировано 21 сентября 2020 года.
  9. React Native for Web. Дата обращения: 6 ноября 2019. Архивировано 5 декабря 2019 года.
  10. Windows Apps Team. React Native on the Universal Windows Platform. blogs.windows.com (April 13, 2016). Дата обращения: 6 ноября 2016. Архивировано 7 ноября 2016 года.
  11. Out-of-Tree Platforms. reactnative.dev. Facebook, Inc.. Дата обращения: 30 июля 2020. Архивировано 1 июля 2020 года.
  12. Bridging in React Native (14 October 2015). Дата обращения: 16 января 2018. Архивировано 9 мая 2021 года.
  13. React Native vs Flutter: Which Cross-Platform Framework is Better? (недоступная ссылка). Дата обращения: 6 ноября 2019. Архивировано 14 мая 2019 года.
  14. How we build React Native app: 7 things which save your development time. Part 2. Дата обращения: 6 ноября 2019.
  15. React Native Style. Дата обращения: 24 февраля 2021. Архивировано 29 апреля 2021 года.