React Native

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
React Native
Тип фреймворк для розробки

програмного

Розробники Facebook та співтовариство
Написаний на JavaScript, Java, C++,

Objective-C, Python

Перший випуск 26 березня 2015;

7 років тому

Апаратна платформа Android, Android TV, iOS,

macOS, tvOS, Web, Windows, UWP, and VR

Остання версія версія 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);

Дивіться також

[ред. | ред. код]

Список літератури

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