Реагировать нативный
![]() | |
Разработчик(и) | Мета и сообщество |
---|---|
Первоначальный выпуск | 26 марта 2015 г [1] |
Стабильная версия | 0.74.3 [2] ![]() |
Репозиторий | https://github.com/facebook/react-native |
Написано в | JavaScript , Java , C++ , Objective-C , Python |
Платформа | Android , Android TV , iOS , macOS , tvOS , Интернет , Windows , UWP и VR |
Тип | Платформа приложения |
Лицензия | МОЯ лицензия |
Веб-сайт | реактивный |
React Native — это с открытым исходным кодом, пользовательского интерфейса программная платформа созданная Facebook Inc. (теперь Meta Platforms). [3] Он используется для разработки приложений для Android , [4] : §Chapter 1 [5] [6] Андроид ТВ , [7] iOS , [4] : §Chapter 1 [6] macOS , [8] ТВОС , [9] Интернет , [10] Окна [8] и UWP [11] позволяя разработчикам использовать среду React вместе с собственными возможностями платформы. [12] Он используется для разработки приложений Android и iOS в Facebook, Microsoft и Shopify. [13] Он также используется для разработки приложений виртуальной реальности в Oculus . [14]
История
[ редактировать ]В 2012 году Марк Цукерберг прокомментировал: «Самая большая ошибка, которую мы как компания совершили, заключалась в том, что мы сделали слишком большую ставку на HTML5 , а не на нативный». [15] [16] Использование HTML5 для мобильной версии Facebook привело к нестабильной работе приложения, которое медленно получало данные. [17] Он пообещал, что Facebook вскоре предоставит лучший мобильный опыт.
Внутри Facebook Джордан Уок нашел способ генерировать элементы пользовательского интерфейса для iOS из фонового JavaScript потока , который стал основой веб-фреймворка React . Они решили организовать внутренний хакатон , чтобы усовершенствовать этот прототип и иметь возможность создавать собственные приложения с использованием этой технологии. [18]
В 2015 году, после нескольких месяцев разработки, Facebook выпустил первую версию конфигурации React JavaScript. Во время технического разговора [19] Кристофер Шедо объяснил, что Facebook уже использует React Native в производстве своего группового приложения и приложения Ads Manager. [20]
Выполнение
[ редактировать ]Принципы работы React Native практически идентичны React, за исключением того, что React Native не манипулирует DOM через Virtual DOM . [4] : §Chapter 2 Он запускается в фоновом процессе (который интерпретирует JavaScript ) непосредственно на конечном устройстве и взаимодействует с собственным написанный разработчиками [4] : §Chapter 2 платформу через сериализованные данные через асинхронный и пакетный мост. [21] [22]
React Компоненты React оборачивают существующий собственный код и взаимодействуют с собственными API через парадигму декларативного пользовательского интерфейса и JavaScript . TypeScript часто используется вместо JavaScript в современных приложениях React Native из-за его повышенной безопасности типов. [23]
Хотя стиль React Native имеет синтаксис, аналогичный CSS, он не использует HTML или CSS . [4] : §Chapter 5 [24] Вместо этого сообщения из потока JavaScript используются для управления собственными представлениями.
React Native также доступен как для Windows , так и для macOS , который в настоящее время поддерживается Microsoft .
Привет, мир, пример
[ редактировать ]Программа Hello, World в React Native выглядит так:
import { AppRegistry, Text, View, Button } from 'react-native';
import React from 'react';
const HelloWorldApp = () => {
const [count, setCount] = React.useState(0);
const incrementCount = () => {
setCount((prevCount) => prevCount + 1);
};
return (
<View>
<Text>Hello world!</Text>
<Text>{count}</Text>
<Button onPress={incrementCount} title="Increase Count" />
</View>
);
};
export default HelloWorldApp;
AppRegistry.registerComponent('HelloWorld', () => HelloWorldApp);
См. также
[ редактировать ]- Реагировать (библиотека JavaScript)
- Платформа веб-приложений для нескольких телефонов
- НативСкрипт
- Ксамарин
- Титановый SDK
- Апач Кордова
- Флаттер (программное обеспечение)
- Qt (программное обеспечение)
- Кодовое имя один
- Реактивный ранец
Цитаты
[ редактировать ]- ^ «React Native: перенос современных веб-технологий на мобильные устройства» . 26 марта 2015 г.
- ^ «Выпуск 0.74.3» . 1 июля 2024 г. Проверено 26 июля 2024 г.
- ^ «Глава 1. Что такое React Native?» . oreilly.com . О'Рейли Медиа, Инк . Проверено 30 июля 2020 г.
- ^ Перейти обратно: а б с д и Эйзенман 2016 .
- ^ «Выпуск Android для React Native» . 14 сентября 2015 г.
- ^ Перейти обратно: а б Шенкленд, Стивен (29 марта 2018 г.). «Радикальный шаг Mozilla в сторону открытого исходного кода помог переписать правила технологий» . CNET . Проверено 11 мая 2022 г.
- ^ «Создание телевизионных устройств · React Native» . Reactnative.dev . Проверено 2 октября 2020 г.
- ^ Перейти обратно: а б «React Native для Windows + macOS · Создавайте собственные приложения для Windows и macOS с помощью Javascript и React» . microsoft.github.io . Проверено 2 октября 2020 г.
- ^ «React Native для Apple TV» . React Native для Apple TV . Проверено 2 октября 2020 г.
- ^ «React Native для Интернета» . Гитхаб . Проверено 6 ноября 2019 г.
- ^ Группа приложений Windows (13 апреля 2016 г.). «React Native на универсальной платформе Windows» . блоги.windows.com . Проверено 6 ноября 2016 г.
- ^ «Вне-деревянные платформы» . Reactnative.dev . Фейсбук, Инк . Проверено 30 июля 2020 г.
- ^ «Витрина React Native» . реакция.native.dev . Проверено 4 апреля 2023 г.
- ^ «React Native во втором полугодии 2021 года · React Native» . Reactnative.dev . Проверено 20 августа 2021 г.
- ^ «Самая большая ошибка Цукерберга? «Ставка на HTML5» » . Машаемый . Проверено 7 апреля 2018 г.
- ^ Цукерберг, Марк (12 сентября 2012 г.). «Беседа у камина с основателем и генеральным директором Facebook Марком Цукербергом» . TechCrunch (интервью) . Проверено 16 августа 2021 г.
- ^ Уоррен, Кристина. «Самая большая ошибка Цукерберга? «Ставка на HTML5» » . Машаемый . Проверено 29 октября 2020 г.
- ^ «Краткий рассказ о React Native» . Проверено 16 января 2018 г.
- ^ Кристофер, Шедо. «Глубокое погружение в React Native» . Ютуб . Проверено 16 января 2018 г.
- ^ «React Native: перенос современных веб-технологий на мобильные устройства» . 26 марта 2015 г.
- ^ «Соединение в React Native» . 14 октября 2015 г. Проверено 16 января 2018 г.
- ^ «Как мы создаем приложение React Native: 7 вещей, которые экономят ваше время разработки. Часть 2» . Проверено 6 ноября 2019 г.
- ^ «Использование TypeScript» . Reactnative.dev . Мета Платформы, Inc. Проверено 14 июля 2023 г.
- ^ «Реагировать на родной стиль» . Проверено 24 февраля 2021 г.
Ссылки
[ редактировать ]- Эйзенман, Бонни (2016). Изучение React Native . О'Рейли . ISBN 978-1-491-92900-1 .