React Native

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

React Native
Тип фреймворк для разработки мобильных приложений
Разработчик Facebook и сообщество
Написана на JavaScript, Java, C++, Objective-C
Первый выпуск 26 марта 2015 (2015-03-26)[1]
Аппаратная платформа Android, Android TV, iOS, macOS, tvOS, Web и Windows
Последняя версия 0.66.4 (9 декабря 2021 (2021-12-09)[2])
Тестовая версия 0.67.0-rc.6 (14 декабря 2021 (2021-12-14)[2])
Лицензия MIT License
Сайт reactnative.dev

Реализация

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

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

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

См. также

Примечания

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