Ռեակտ Նեյթիվ

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Ռեակտ Նեյթիվ
Изображение логотипа
ՏեսակJavaScript framework? և ծրագրային ապահովում
Առաջացել է2015
ՍտեղծողMeta Platforms
ՕՀբազմապլատֆորմ
Ներշնչվել էReact
ԱրտոնագիրMIT արտոնագիր
Կայքfacebook.github.io/react-native/ և github.com/facebook/react-native#readme
Ելակոդgithub.com/facebook/react-native

Ռեակտ Նեյթիվ (անգլ․՝ React Native), բաց կոդով միջպլատֆորմային ծրագրային ապահովում՝JavaScript-ում և TypeScript-ում բջջային և համակարգչային ծրագրեր մշակելու համար, որը ստեղծվել է Facebook, Inc-ի կողմից։[1] React Native-ը թույլ է տալիս ծրագրավորողներին օգտագործել React գրադարանի հնարավորությունները բրաուզերից դուրս՝  համակարգի API հարթակին լիարժեք մուտք ունեցող ծրագրեր գրելիս։

Պատմություն[խմբագրել | խմբագրել կոդը]

2012 թ.-ին Մարկ Ցուկերբերգն ասել է․ “Ամենամեծ սխալը, որը մենք թույլ ենք տվել՝ որպես ընկերություն, HTML-ի վրա չափազանց մեծ խաղադրույք կատարելն էր՝ native-ի փոխարեն”։ Օգտագործելով HTML5Facebook-ի բջջային տարբերակի համար՝ այն դարձել էր անկայուն ծրագիր, որը դանդաղ էր աշխատում տվյալների հետ։ Ուստի Մարկ Ցուկերբերգը խոսք տվեց, որ շուտով Facebook-ը կտրամադրի բարելավված բջջային հնարավորություններ։

Facebook-ի աշխատակիցներից մեկը՝ Ջորդան Ուոլքը (անգլ․՝ Jordan Walke), գտավ iOS համակարգի համար ֆոնային JavaScript-ի կատարման հոսքից UI տարրեր ստեղծելու միջոց, որոնք դարձան React web framework-ի հիմքը։

Ամիսներ շարունակ ծրագրավորումից հետո՝ 2015թ․-ին Facebook-ը ներկայացրեց React JavaScript Configuration-ի առաջին տարբերակը։ Իր խոսքումՔրիստոդեր Չեդոն (անգլ․՝ Christopher Chedeau) բացատրեց, որ Facebook-ը արդեն իսկ օգտագործում էր React Native-ը արտադրության մեջ՝ իրենց Group App-ի և Ads Manager App-ի համար։

Գործառություն[խմբագրել | խմբագրել կոդը]

React Native-ը աշխատում է մի շարք համակարգերում, որոնց թվում են՝ Android[2], Android TV[3], iOS, macOS[4], Apple tvOS, Web[5], Windows և UWP։ Այն նաև օգտագործվում է վիրտուալ իրականության ծրագրեր գրելու համար՝ Oculus-ում։

Գործնականում React Native-ի աշխատանքի սկզբունքները նույնական են React-ին, բացառությամբ, որ React Native-ը չի շահարկում DOMVirtual DOM-ի միջոցով։ Այն աշխատում է ֆոնային գործընթացում` ուղղակիորեն վերջնական սարքի վրա, և հաղորդակցվում է բնիկ հարթակի հետ` սերիականացված տվյալների միջոցով:

Թեև React Native-ի ոճը նման է CSS-ի շարահյուսությանը, այն չի օգտագործում HTML կամ CSS: Փոխարենը, JavaScript-ի thread-ի հաղորդագրություններն օգտագործվում են բնիկ դիտումները շահարկելու համար:

React Native-ը նաև թույլ է տալիս ծրագրավորողներին գրել native code այնպիսի լեզուներով, ինչպիսիք են Java-ն կամ Kotlin-ը՝ Android-ի, Objective-C կամ Swift-ը՝ iOS-ի և C++/WinRT կամ C#-ը՝ Windows 10-ի համար, ինչն էլ ավելի ճկուն է դարձնում այն:

Microsoft-ը շարունակում է բարելավվել և պահպանել աջակցությունը React Native for Windows-ի և React Native for macOS-ի համար։

«Hello World» ծրագրի օրինակ[խմբագրել | խմբագրել կոդը]

Hello, World ծրագրի օրինակը React Native-ում նման է հետևյալին՝

import { AppRegistry, Text } from 'react-native';
import * as React from 'react';

const HelloWorldApp = () => {
  return <Text>Hello world!</Text>;
}

export default HelloWorldApp;

AppRegistry.registerComponent('HelloWorld', () => HelloWorldApp);

Տես Նաև[խմբագրել | խմբագրել կոդը]

Գրականություն[խմբագրել | խմբագրել կոդը]

  • Բոնի Էյզենման, Learning React Native: Building Native Mobile Apps with JavaScript, Դեկտեմբերի 3, 2015թ.
  • Ռոյ Դերքս, Ադամ Բոդուհ, React and React Native: A Complete Hands-on Guide to Modern Web and Mobile Development with React.js, 3rd Edition, Ապրիլի 20, 2020թ․
  • Նադեր Դաբիթ, React Native in Action: Developing IOS and Android Apps with JavaScript, Մարտի 7, 2019թ․
  • Ադամ Բոդուհ, React and React Native, Փետրվարի 7, 2017թ․
  • Frank W. Zammetti, Practical React Native: Build Two Full Projects and One Full Game Using React Native, Նոյեմբերի 12, 2018թ․

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. «1. What Is React Native? - Learning React Native [Book]»։ www.oreilly.com (անգլերեն)։ Վերցված է 2021-10-23 
  2. «React Native for Android: How we built the first cross-platform React Native app»։ Facebook Engineering (en-US)։ 2015-09-14։ Վերցված է 2021-10-23 
  3. «React Native · Learn once, write anywhere»։ reactnative.dev (անգլերեն)։ Վերցված է 2021-10-23 
  4. «React Native for Windows + macOS · Build native Windows & macOS apps with Javascript and React»։ microsoft.github.io։ Վերցված է 2021-10-23 
  5. Gallagher, Nicolas (2021-10-23), React Native for Web, https://github.com/necolas/react-native-web, վերցված է 2021-10-23 

Արտաքին Հղումներ[խմբագրել | խմբագրել կոդը]