React Native
Тип | фреймворк для розробки
програмного |
---|---|
Розробники | Facebook та співтовариство |
Написаний на | JavaScript, Java, C++, |
Перший випуск | 26 березня 2015;
7 років тому |
Апаратна платформа | Android, Android TV, iOS, |
Остання версія | версія 0.69.3
(25 липня 2022; 4 місяці тому) |
Ліцензія | MIT License |
Сайт | reactnative.dev |
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]
У 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);
- React (бібліотека JavaScript)
- Xamarin
- Apache Cordova
- Flutter (програмне забезпечення)
- Qt (програмне забезпечення)
- ↑ Chapter 1. What Is React Native?. oreilly.com. O’Reilly Media, Inc. Процитовано 30 липня 2020.
- ↑ Android Release for React Native. 14 вересня 2015.
- ↑ а б Shankland, Stephen (29 березня 2018). Mozilla's radical open-source move helped rewrite rules of tech. CNET. Процитовано 11 травня 2022.
- ↑ Building For TV Devices · React Native. reactnative.dev (англ.). Процитовано 2 жовтня 2020.
- ↑ а б React Native for Windows + macOS · Build native Windows & macOS apps with Javascript and React. microsoft.github.io. Процитовано 2 жовтня 2020.
- ↑ React Native for Apple TV. React Native for Apple TV (амер.). Архів оригіналу за 21 вересня 2020. Процитовано 2 жовтня 2020.
- ↑ React Native for Web. GitHub. Процитовано 6 листопада 2019.
- ↑ Windows Apps Team (13 квітня 2016). React Native on the Universal Windows Platform. blogs.windows.com. Процитовано 6 листопада 2016.
- ↑ Out-of-Tree Platforms. reactnative.dev. Facebook, Inc. Процитовано 30 липня 2020.
- ↑ React Native in H2 2021 · React Native. reactnative.dev (англ.). Процитовано 20 серпня 2021.
- ↑ Zuckerberg's Biggest Mistake? 'Betting on HTML5'. Mashable. Процитовано 7 квітня 2018.
- ↑ Zuckerberg, Mark (12 вересня 2012). Fireside Chat With Facebook Founder and CEO Mark Zuckerberg. TechCrunch (interview). Процитовано 16 серпня 2021.
{{cite web}}
: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання) - ↑ Warren, Christina. Zuckerberg's Biggest Mistake? 'Betting on HTML5'. Mashable (англ.). Процитовано 29 жовтня 2020.
- ↑ A short Story about React Native. Архів оригіналу за 17 січня 2018. Процитовано 16 січня 2018.
- ↑ Christopher, Chedeau. A Deep Dive into React Native. YouTube. Процитовано 16 січня 2018.
- ↑ React Native: Bringing modern web techniques to mobile. 26 березня 2015.
- ↑ Bridging in React Native. 14 жовтня 2015. Процитовано 16 січня 2018.
- ↑ How we build React Native app: 7 things which save your development time. Part 2. Процитовано 6 листопада 2019.
- ↑ React Native Style. Процитовано 24 лютого 2021.