Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

История [ править ]

В 2012 году Марк Цукерберг прокомментировал: «Самая большая ошибка, которую мы совершили как компания, - слишком много сделала ставку на HTML, а не на нативный». [11] Использование HTML5 для мобильной версии Facebook привело к нестабильному приложению, которое медленно извлекало данные. [12] Он пообещал, что Facebook скоро улучшит мобильность.

В Facebook Джордан Уолк нашел способ генерировать элементы пользовательского интерфейса для iOS из фонового потока JavaScript , который стал основой для веб-фреймворка React . Они решили организовать внутренний хакатон, чтобы усовершенствовать этот прототип , чтобы иметь возможность создавать собственные приложения с этой технологией. [13]

После нескольких месяцев разработки Facebook выпустил первую версию конфигурации React JavaScript в 2015 году. Во время технического разговора [14] Кристофер Чедо объяснил, что Facebook уже использует React Native в производстве для своего группового приложения и своего приложения Ads Manager. [15]

Реализация [ править ]

Принципы работы React Native практически идентичны React, за исключением того, что React Native не управляет DOM через виртуальный DOM . Он работает в фоновом режиме (который интерпретирует JavaScript, написанный разработчиками) непосредственно на конечном устройстве и взаимодействует с собственной платформой через сериализованные данные через асинхронный и пакетный мост. [16] [17] [18]

Компоненты React обертывают существующий собственный код и взаимодействуют с собственными API через парадигму декларативного пользовательского интерфейса React и JavaScript . Это позволяет разрабатывать собственные приложения для совершенно новых команд разработчиков и позволяет существующим группам работать намного быстрее. [19]

Хотя стили React Native имеют синтаксис, аналогичный CSS, он не использует HTML или CSS . [20] Вместо этого сообщения из потока JavaScript используются для управления собственными представлениями. React Native также позволяет разработчикам писать собственный код на таких языках, как Java или Kotlin для Android и Objective-C или Swift для iOS , что делает его еще более гибким.

Пример Hello World [ править ]

Программа Hello, World в React Native выглядит так:

импорт  React  из  'реагируют' ;импортировать  {  AppRegistry ,  Text  }  из  ' react -native' ;const  HelloWorldApp  =  ()  =>  < Text > Hello  world ! < / Text>;экспорт по  умолчанию  HelloWorldApp ;// Пропускаем эту строку при использовании Create React Native AppAppRegistry . registerComponent ( 'HelloWorld' ,  ()  =>  HelloWorldApp );// Собственный код React также можно импортировать из другого компонента со следующим кодом:импортировать  HelloWorldApp  из  './HelloWorldApp' ;

См. Также [ править ]

  • Фреймворк для веб-приложений для нескольких телефонов
  • NativeScript
  • Xamarin
  • Appcelerator Titanium
  • Apache Cordova
  • Flutter (программное обеспечение)
  • Codename One

Ссылки [ править ]

  1. ^ «React Native: перенос современных веб-технологий на мобильные устройства» .
  2. ^ a b «Релизы - Facebook / React» . GitHub .
  3. ^ «Глава 1. Что такое React Native?» . oreilly.com . O'Reilly Media, Inc . Проверено 30 июля 2020 .
  4. ^ «Версия Android для React Native» .
  5. ^ "Строительство для телевизионных устройств · React Native" . reactnative.dev . Проверено 2 октября 2020 .
  6. ^ a b «React Native для Windows + macOS. Создавайте собственные приложения для Windows и macOS с помощью Javascript и React» . microsoft.github.io . Проверено 2 октября 2020 .
  7. ^ «React Native для Apple TV» . React Native для Apple TV . Проверено 2 октября 2020 .
  8. ^ "React Native для Интернета" . Проверено 6 ноября 2019 .
  9. ^ Группа приложений Windows (13 апреля 2016 г.). «React Native на универсальной платформе Windows» . blogs.windows.com . Проверено 6 ноября 2016 .
  10. ^ "Платформы вне дерева" . reactnative.dev . Facebook, Inc . Проверено 30 июля 2020 .
  11. ^ «Самая большая ошибка Цукерберга? 'Ставки на HTML5 ' » . Mashable . Проверено 7 апреля 2018 года .
  12. ^ Уоррен, Кристина. «Цукерберг Самая большая ошибка? Ставки на HTML5 ' » . Mashable . Проверено 29 октября 2020 .
  13. ^ «Краткий рассказ о React Native» . Проверено 16 января 2018 .
  14. ^ Кристофер, Чедо. «Глубокое погружение в React Native» . YouTube . Проверено 16 января 2018 .
  15. ^ «React Native: перенос современных веб-технологий на мобильные устройства» .
  16. ^ «Мостик в React Native» . 14 октября 2015 . Проверено 16 января 2018 .
  17. ^ "React Native vs Flutter: какая кроссплатформенная платформа лучше?" . Проверено 6 ноября 2019 .
  18. ^ «Как мы создаем приложение React Native: 7 вещей, которые экономят ваше время разработки. Часть 2» . Проверено 6 ноября 2019 .
  19. ^ "Как React Native может улучшить процесс разработки приложений?" . Проверено 15 февраля 2019 .
  20. ^ "React Native Style" . Проверено 24 февраля 2021 года .