Reactive native
Reactive native software | |
---|---|
Tip | Cadrul pentru aplicații web |
Dezvoltator | Facebook și comunitate |
Data primei versiuni | 2015 |
Ultima versiune | 0.64.2 (3 iunie 2021) |
Sistem de operare | Multiplatform |
Limba | Obiectivul C Piton Java JavaScript C ++ Obiectivul C , Python |
Licență | Licență MIT ( licență gratuită ) |
Site-ul web | reactnative.dev/ |
React Native este un cadru de aplicații mobile open-source creat de Facebook. [1] Folosit pentru a dezvolta aplicații pentru Android , [2] Android TV , [3] iOS , macOS , [4] tvOS , [5] Web , [6] Windows și UWP [7] permițând dezvoltatorilor să utilizeze cadrul React împreună cu caracteristicile platformei native. [8]
Istorie
În trecut, utilizarea HTML5 pentru versiunea mobilă a Facebook a dus la o aplicație instabilă cu recuperare lentă a datelor. [9] Din acest motiv, Mark Zuckerberg a promis că Facebook va oferi în curând o experiență mobilă mai bună.
În cadrul Facebook , Jordan Walke a găsit o modalitate de a genera elemente de interfață iOS dintr-un fir JavaScript de fundal, care a devenit baza pentru cadrul web React . Au decis să organizeze un Hackathon intern pentru a rafina acest prototip, astfel încât să poată crea aplicații native cu această tehnologie. [10]
După luni de dezvoltare, Facebook a lansat prima versiune pentru React în JavaScript în 2015. Într-o discuție tehnică, [11] Christopher Chedeau a explicat că Facebook folosea deja React Native în producție pentru aplicația sa de gestionare a anunțurilor. [12]
Implementare
Principiile de funcționare ale React Native sunt practic identice cu React , cu excepția faptului că React Native nu manipulează DOM prin intermediul DOM Virtual . De fapt, are loc o execuție de fundal care interpretează JavaScript-ul scris de dezvoltatori direct pe dispozitivul final care comunică cu platforma nativă printr-o serializare a datelor pe o punte asincronă . [13] [14]
Componentele React înfășoară codul nativ existent și interacționează cu API-urile native prin programarea declarativă React și JavaScript . [15]
Deși React nativ are un stil CSS- ca sintaxă, nu folosește HTML sau CSS . [16] În schimb, mesajele din firul JavaScript sunt utilizate pentru a manipula vizualizările native. React Native permite, de asemenea, dezvoltatorilor să scrie coduri native în limbi precum Java sau Kotlin pentru Android și Objective-C sau Swift pentru iOS , ceea ce îl face și mai flexibil.
Exemplu de bază
Un exemplu de program Hello World în React Native arată astfel:
import React din „reacționează” ;
importați { AppRegistry , Text } din „react-native” ;
const HelloWorldApp = () => < Text > Hello world ! < / Text>;
export implicit HelloWorldApp ;
// Nu introduceți această linie dacă creați o aplicație React Native
AppRegistry . registerComponent ( 'HelloWorld' , () => HelloWorldApp );
// React Native code poate fi de asemenea importat dintr-o altă componentă după cum urmează:
importă HelloWorldApp din „./HelloWorldApp” ;
Elemente conexe
Notă
- ^ oreilly.com , https://www.oreilly.com/library/view/learning-react-native/9781491929049/ch01.html . Adus la 30 iulie 2020 .
- ^ code.facebook.com , https://code.facebook.com/posts/1189117404435352/react-native-for-android-how-we-built-the-first-cross-platform-react-native-app/ .
- ^ reactnative.dev , https://reactnative.dev/ . Accesat la 2 octombrie 2020 .
- ^ microsoft.github.io , https://microsoft.github.io/react-native-windows/ . Accesat la 2 octombrie 2020 .
- ^ React Native pentru Apple TV , https://dlowder-salesforce.github.io/react-native-apple-tv/ . Accesat la 2 octombrie 2020 .
- ^ github.com , https://github.com/necolas/react-native-web/ . Adus la 6 noiembrie 2019 .
- ^ Echipa de aplicații Windows, blogs.windows.com , https://blogs.windows.com/buildingapps/2016/04/13/react-native-on-the-universal-windows-platform/ . Accesat la 6 noiembrie 2016 .
- ^ reactnative.dev , https://reactnative.dev/docs/out-of-tree-platforms . Adus la 30 iulie 2020 .
- ^ (EN) Mashable, https://mashable.com/2012/09/11/html5-biggest-mistake/ Adus pe 29 octombrie 2020 .
- ^ jobninja.com , https://jobninja.com/blog/short-story-react-native/ . Adus la 16 ianuarie 2018 .
- ^ YouTube , https://www.youtube.com/watch?v=7rDsRXj9-cU . Adus la 16 ianuarie 2018 .
- ^ code.facebook.com , https://code.facebook.com/posts/1014532261909640/react-native-bringing-modern-web-techniques-to-mobile/ .
- ^ tadeuzagallo.com , https://tadeuzagallo.com/blog/react-native-bridge/ . Adus la 16 ianuarie 2018 .
- ^ blog.uptech.team , https://blog.uptech.team/how-we-build-apps-on-react-native-part-2-7-things-you-should-know-to-save-your -development-time-944533f81c03 . Adus la 6 noiembrie 2019 .
- ^ xongolab.com , https://www.xongolab.com/blog/how-react-native-can-empower-your-mobile-app-development-process/ . Adus la 15 februarie 2019 .
- ^ reactnative.dev , https://reactnative.dev/docs/style . Adus la 24 februarie 2021 .