React Native
З Вікіпедії, вільної енциклопедії
React Native — фреймворк інтерфейсу користувача з відкритим кодом, створений Meta Platforms, Inc.[1] Він використовується для розробки програм для Android, [2] [3] Android TV, [4] iOS, [3] macOS, [5] tvOS, [6] Web, [7] Windows [5] і UWP [8] дозволяючи розробникам використовувати фреймворк React разом із нативними можливостями платформи.[9] Також використовується для розробки програм віртуальної реальності в Oculus.[10]
![]() | |
---|---|
Тип | фреймворк для розробки
програм |
Розробники | Facebook та співтовариство |
Написаний на | JavaScript, Java, C++, |
Перший випуск | 26 березня 2015;
7 років тому |
Апаратна платформа | Android, Android TV, iOS, |
Остання версія | версія 0.69.3
(25 липня 2022; 4 місяці тому) |
Ліцензія | MIT License |
Сайт | reactnative.dev |
Історія
У 2012 році Марк Цукерберг прокоментував: «Найбільша помилка, яку ми припустили як компанія, — це занадто багато ставок на HTML, а не нативний». [11] [12] Використання HTML5 для мобільної версії Facebook призвело до нестабільної роботи програми, яка повільно отримувала дані. [13] Він пообіцяв, що Facebook незабаром забезпечить кращий мобільний досвід.
У Facebook Джордан Волке знайшов спосіб генерувати елементи інтерфейсу користувача для iOS із фонового потоку JavaScript, який став основою для веб-фреймворку React. Вони вирішили організувати внутрішній хакатон, щоб удосконалити цей прототип, щоб мати можливість створювати нативні програми за допомогою цієї технології. [14]
У 2015 році, після місяців розробки, Facebook випустив першу версію для конфігурації React JavaScript. Під час технічної розмови [15] Крістофер Шедо пояснив, що Facebook уже використовує React Native у виробництві для своїх групових додатків і додатків Ads Manager. [16]
Реалізація
Принципи роботи React Native практично ідентичні React, за винятком того, що React Native не використовує DOM через Virtual DOM. Працює у фоновому режимі (який інтерпретує JavaScript, написаний розробниками) безпосередньо на кінцевому пристрої та спілкується з рідною платформою через серіалізовані дані через асинхронний і пакетний міст. [17] [18]
Компоненти React обгортають існуючий нативний код і взаємодіють із нативними API через декларативну парадигму інтерфейсу React і JavaScript.
Хоча стиль React Native має подібний синтаксис до CSS, він не використовує HTML або CSS.[19] Натомість повідомлення з потоку JavaScript використовуються для маніпулювання нативними представленнями. Без React Native розробники повинні писати нативний код на мовах цільової платформи, таких як Java або Kotlin для Android, Objective-C або Swift для iOS і C++/WinRT або C# для Windows 10.
React Native також доступний як для Windows, так і для macOS, який наразі підтримує Microsoft.
Приклад Привіт Світ
Програма Привіт Світ у React Native виглядає так:
import { AppRegistry, Text } from 'react-native';
import * as React from 'react';
const HelloWorldApp = () => {
return <Text>Привіт Світ!</Text>;
}
export default HelloWorldApp;
AppRegistry.registerComponent('Привіт Світ', () => HelloWorldApp);
Дивіться також
Список літератури
Wikiwand - on
Seamless Wikipedia browsing. On steroids.