React
React (sonday-aq React.js yamasa ReactJS dep te ataladı) ‒ bul biypul hám ashıq kodlı front-end JavaScript kitapxanası[1][2] bolıp, komponentlerge tiykarlanǵan paydalanıwshı interfeyslerin jaratıwdı kóbirek "úziliksiz" etiwge baǵdarlanǵan[1] Ol Meta (burınǵı Facebook) hám jeke baǵdarlamashılar hám kompaniyalar jámiyeti tárepinen qollap-quwatlanadı.[3][4][5].
React bir betli, mobil yamasa Next.js sıyaqlı freymvorkler menen server tárepinen renderlengen qosımshalardı islep shıǵıw ushın qollanılıwı múmkin. React tek paydalanıwshı interfeysi hám komponentlerdi DOM-ǵa renderlew menen shuǵıllanatuǵını sebepli, React qosımshaları kóbinese marshrutizaciya hám basqa da klient tárep funkcionallıǵı ushın kitapxanalarǵa súyenedi.[6][7] React tiń tiykarǵı artıqmashlıǵı - ol bettiń tek ózgergen bólimlerin qayta renderleydi, ózgermegen DOM elementlerin kereksiz qayta renderlewden qashıp ótedi.
Áhmiyetli ózgeshelikleri
Deklarativlik
[8]React deklarativ programmalastırıw paradigmasına ámel etedi.[9]: 76 Baǵdarlamashılar qosımshanıń hárbir halatı ushın kórinislerdi dizayn etedi, al React maǵlıwmatlar ózgergende komponentlerdi jańalaydı hám renderleydi. Bul imperativ programmalastırıwǵa qarama-qarsı.[10]
Komponentler
React kodı komponentler dep atalatuǵın obyektlerden turadı.: 10–12 Bul komponentler modulli hám qayta qollanılıwshı.[9]: React qosımshaları ádette komponentlerdiń kóp qatlamlarınan ibarat. Komponentler React DOM kitapxanası arqalı DOM-daǵı tiykarǵı elementke renderlenedi. Komponentti renderlew waqtında, mánisler komponentler arasında props (qısqasha "qásiyetler") arqalı beriledi. Komponent ishindegi mánisler onıń halatı dep ataladı.[11]
React-te komponentlerdi járiyalawdıń eki tiykarǵı usılı - funkciya komponentleri hám klass komponentleri arqalı.[9]: 118 [12]: 10
Funkciya komponentleri
Funkciya komponentleri bir "props" argumentin qabıl etetuǵın hám JSX qaytaratuǵın funkciya menen járiyalanadı (JavaScript funkciya sintaksisin yamasa strelkalı funkciya ańlatpasın qollanıp). React v16.8 den baslap, funkciya komponentleri useState Hook arqalı halattı qollana aladı.
React Xukleri
2019-jıldıń 16-fevralında React 16.8 jámiyetshilikke shıǵarıldı, React Hooks engizildi[13]. Hooks - bul baǵdarlamashılarǵa funkciya komponentlerinen React halatı hám ómirlik cikl múmkinshiliklerine "qosıwǵa" imkaniyat beretuǵın funkciyalar[14]. Áhmiyetlisi, Hooks klasslar ishinde islemeydi - olar baǵdarlamashılarǵa klasslar bolmasa da React tiń kóbirek múmkinshiliklerin qollanıwǵa imkaniyat beredi[15].
React bir neshe qurılǵan xuklerdi usınadı, mısalı useState[16],[12]: 37 useContext,[9]: 11 [17][12]: 12 useReducer,[9]: 92 [17][12]: 65–66 useMemo[9]: 154 [17][12]: 162 and useEffect[18].[12]: 93–95 Basqaları Hooks API anıqlamasında hújjetlestirilgen[19].[9]: 62 Eń kóp qollanılatuǵın useState hám useEffect sáykes túrde halattı: 37 hám uqsas tásirlerdi,[9]: 61 basqarıw ushın qollanıladı.
Xuklerdiń qaǵıydaları
Xuklerdiń eki qaǵıydası bar[20], olar xukler súyenetuǵın xarakterli kod úlgilerin súwretleydi:
- "Xuklerdi tek joqarǵı dárejede shaqırıń" — xuklerdi cikldiń ishinde, shártlerde yamasa ishke salınǵan mánislerde shaqırmań, solay etip xukler hárbir renderde birdey tártipte shaqırıladı.
- "Xuklerdi tek React funkciyalarınan shaqırıń" — xuklerdi ápiwayı JavaScript funkciyalarınan shaqırmań, solay etip halatlı logika komponent penen birge qaladı.
Bul qaǵıydalar orınlanıw waqtında májbúriy túrde qollanılmasa da, kod analizi quralları, mısalı linterler, rawajlanıw barısında kóplegen qátelerdi anıqlaw ushın konfiguraciya qılınıwı múmkin. Bul qaǵıydalar hám Xuklerdi qollanıwǵa, hám basqa Xuklerdi shaqıra alatuǵın ózgeshe Xuklerdi islep shıǵıwǵa qollanıladı[21].
Server komponentleri
React server komponentleri (RSC) [22] - bul tek serverde jumıs isleytuǵın funkciya komponentleri. Bul koncepciya dáslep "Data Fetching with Server Components" sóylesiwinde tanıstırılǵan[23]. Server tárepinen renderlew koncepciyasına uqsas bolsa da, RSC-ler klientke sáykes JavaScript jibermeydi, sebebi hesh qanday gidrataciya bolmaydı. Nátiyjede, olardıń xuklerge kiriwi joq. Biraq, olar asinxron funkciya bolıwı múmkin, bul olarǵa tikkeley asinxron operaciyalardı orınlawǵa múmkinshilik beredi:
async function MenińKomponentim() {
const xabar = await maǵlıwmatlarBazasınanXabarAlıw();
return (
<div>Xabar: {xabar}</div>
);
}
Házirgi waqıtta, server komponentleri eń qolay túrde Next.js penen qollanıladı.
Klass komponentleri
Klass komponentleri ES6 klassları arqalı járiyalanadı. Olar funkciya komponentleri sıyaqlı isleydi, biraq halattı hám ómirlik cikl waqıyaların basqarıw ushın Xuklerdi qollanıwdıń ornına, olar React.Component tiykarǵı klassındaǵı ómirlik cikl metodların qollanadı.
class AtaKomponent extends React.Component {
state = { reń: 'jasıl' };
render() {
return (
<BalaKomponent reń={this.state.reń} />
);
}
}
2019-jıldıń fevral ayında React 16.8 versiyası menen birge kirgizilgen React Xukleri programmistlerge funkcional komponentler ishinde halattı hám ómirlik cikl háreketlerin basqarıwǵa múmkinshilik berdi, bul klass komponentlerine bolǵan ǵárezlikti kemeytti.
Bul tendenciya keń kólemli industriya háreketiniń funkcional programmalastırıw hám modulli dizaynǵa qaray baǵdarlanıwı menen sáykes keledi. React rawajlanıwdı dawam etken sayın, programmistler jańa qollanbalardı dúzgende yamasa bar bolǵanların qayta islegende funkcional komponentler hám React Xukleriniń artıqmashlıqların esapqa alıwı áhmiyetli[24].
Marshrutlaw
React ózi marshrutlawdı qollaw ushın qurılǵan funkciyalarǵa iye emes. React tiykarınan paydalanıwshı interfeyslerin qurıw ushın kitapxana bolıp, ol tolıq marshrutlaw sheshimin óz ishine almaydı. React qollanbalarında marshrutlawdı basqarıw ushın úshinshi tárep kitapxanaları qollanılıwı múmkin[25]. Bul programmistke marshrutlardı anıqlaw, navigaciyanı basqarıw hám URL ózgerislerin React-ke qolaylı túrde qollanıwǵa múmkinshilik beredi.

Virtual DOM
Jáne bir ayrıqsha ózgeshelik - bul virtual Hújjet Obekt Modeli, yamasa Virtual DOM qollanılıwı. React yadta maǵlıwmat strukturası keshin jaratadı, nátiyjedegi ayırmashılıqlardı esaplaydı, sońınan brauzerdiń kórsetilgen DOM-ın nátiyjeli túrde jańalaydı[26]. Bul process úylesiw dep ataladı. Bul programmistke pútkil bet hárbir ózgeriste qayta sızılatuǵınday etip kod jazıwǵa múmkinshilik beredi, al React tek haqıyqatında ózgergen komponentlerdi qayta sızadı. Bul saylanǵan túrde qayta sızıw ádewir ónimdarlıq artıqmashlıǵın beredi[27].
Jańalanıwlar
Bir komponent hám maqset ushın ReactDOM.render[28] qayta shaqırılǵanda, React Virtual DOM-da jańa UI halatın kórsetedi hám haqıyqıy DOM-nıń qaysı bólimleri (eger bar bolsa) ózgeriwi kerek ekenligin anıqlaydı[29].

Ómirlik cikl metodları
Klassqa tiykarlanǵan komponentler ushın ómirlik cikl metodları, komponenttiń ómir dáwiriniń belgili noqatlarında kodtıń orınlanıwına múmkinshilik beretuǵın ilmek formasın qollanadı.
ShouldComponentUpdatekomponentti qayta sızıw kerek bolmaǵan jaǵdayda false qaytarıw arqalı zárúr emes qayta sızıwdıń aldın alıwǵa múmkinshilik beredi.componentDidMountkomponent "montajlanǵannan" keyin shaqırıladı (komponent paydalanıwshı interfeysinde jaratılǵan, kóbinese DOM túyini menen baylanıstırılǵan). Bul kóbinese API arqalı uzaqtaǵı derekten maǵlıwmat júklewdi baslaw ushın qollanıladı.componentDidUpdatejańalanıw bolǵannan keyin dárhal shaqırıladı[30].componentWillUnmountkomponent buzılıwdan yamasa "montajdan shıǵarılıwdan" aldın dárhal shaqırıladı. Bul ádette komponent montajdan shıǵarılǵanda ápiwayı joq bolıp ketpeytuǵın, komponentke baylanıslı resurslardı kóp talap etetuǵın ǵárezliklerdi tazalaw ushın qollanıladı (mısalı, komponentke baylanıslı bolǵan hár qandaysetInterval()úlgilerin alıp taslaw yamasa komponenttiń bar bolıwına baylanıslı "dokumentte" ornatılǵan "eventListener"di alıp taslaw).rendereń áhmiyetli ómirlik cikl metodı bolıp, hár qanday komponentte talap etiletuǵın jalǵız metod. Ol ádette komponenttiń halatı jańalanǵan hár saparı shaqırıladı, bul paydalanıwshı interfeysinde kórinis tabıwı kerek.
JSX
JSX, yamasa JavaScript XML, JavaScript til sintaksisiniń keńeytilgen túri[31]. Sırtqı kórinisi jaǵınan HTML-ge uqsas bolıp,[9]: 11 JSX kóp programmistlerge tanıs sintaksis arqalı komponent sızıwdı strukturalaw usılın usınadı[9]: 15 React komponentleri ádette JSX paydalanıp jazıladı, biraq bul májbúriy emes (komponentler taza JavaScript-te de jazılıwı múmkin). JSX Facebook tárepinen PHP ushın jaratılǵan XHP dep atalatuǵın basqa keńeytilgen sintaksiske uqsas.
JSX kodınıń mısalı:
class App extends React.Component {
render() {
return (
<div>
<p>Header</p>
<p>Content</p>
<p>Footer</p>
</div>
);
}
}
HTML-den tıs arxitektura
React-tiń tiykarǵı arxitekturası brauzerde HTML renderlewden de keńirek qollanıladı. Mısalı, Facebook <canvas> tegine renderlenetuǵın dinamikalıq diagrammalarǵa iye[32], al Netflix hám PayPal bolsa universal júklew arqalı birdey HTML-di hám serverde, hám klientte renderleydi[33][34].
Server tárepinen renderlew
Server tárepinen renderlew (SSR) klient tárepindegi JavaScript qosımshasın brauzerde emes, al serverde renderlew procesin ańlatadı. Bul qosımshanıń isleniwin jaqsılawı múmkin, ásirese baylanısı áste yamasa quwatlılıǵı tómen qurılmalardı paydalanıwshılar ushın.
SSR menen, klientke jiberiletuǵın dáslepki HTML qosımshanıń tolıq renderlengen paydalanıwshı interfeysin óz ishine aladı. Bul klienttiń brauzerine paydalanıwshı interfeysin dárhal kórsetiwge múmkinshilik beredi, JavaScript júklep alınıwın hám orınlanıwın kútip, sońınan paydalanıwshı interfeysin renderlewdiń ornına.
React SSR-di qollaydı, bul programmistlerge React komponentlerin serverde renderlewge hám nátiyjedegi HTML-di klientke jiberiwge imkaniyat beredi. Bul qosımshanıń islewin jaqsılaw, sonday-aq izlew sistemasın optimizaciyalaw maqsetleri ushın paydalı bolıwı múmkin.
Ulıwma idiomalar
React tolıq qosımsha kitapxanasın beriwge háreket etpeydi. Ol tek paydalanıwshı interfeyslerin qurıw ushın arnawlı dúzilgen[1] hám sonlıqtan ayırım programmistler qosımsha jaratıw ushın zárúr dep esaplaytuǵın kóplegen qurallardı óz ishine almaydı. Bul programmistke tarmaq baylanısın ámelge asırıw yamasa jergilikli maǵlıwmatlardı saqlaw sıyaqlı wazıypalardı orınlaw ushın ózi qálegen kitapxanalardı tańlawǵa imkaniyat beredi. Kitapxana rawajlanǵan sayın, qollanıwdıń ulıwma úlgileri payda boldı.
Bir baǵdarlı maǵlıwmat aǵımı
React-tıń bir baǵdarlı maǵlıwmat aǵımı koncepciyasın qollaw ushın (bunı AngularJS-tiń eki baǵdarlı aǵımı menen salıstırıwǵa boladı), keń tarqalǵan model-kóriniw-basqarıwshı arxitekturasına alternativa sıpatında Flux arxitekturası islep shıǵıldı. Flux oraylıq dispetcher arqalı dúkanǵa jiberiletuǵın háreketlerdi óz ishine aladı, al dúkandaǵı ózgerisler qaytadan kóriniske tarqatıladı[35]. React penen birge qollanılǵanda, bul tarqatıw komponent qásiyetleri arqalı ámelge asırıladı. Payda bolǵannan beri, Flux ornın Redux hám MobX sıyaqlı kitapxanalar bastı[36].
Flux-ti baqlawshı úlgisiniń bir túri dep qarawǵa boladı[37].
Flux arxitekturası astındaǵı React komponenti oǵan berilgen qásiyetlerdi tikkeley ózgertpewi kerek, al oǵan dúkandı ózgertiw ushın dispetcher arqalı jiberiletuǵın háreketlerdi jaratıwshı qaytım funkciyaları beriliwi kerek. Háreket - bul ne bolǵanın súwretlewge juwapker obekt: mısalı, bir paydalanıwshınıń basqa paydalanıwshını "baqlawı" haqqındaǵı háreket paydalanıwshı identifikatorın, maqset paydalanıwshı identifikatorın hám USER_FOLLOWED_ANOTHER_USER tipin óz ishine alıwı múmkin[38]. Modeller sıpatında qarawǵa bolatuǵın dúkanlar dispetcherden alınǵan háreketlerge juwap retinde ózlerin ózgertiwi múmkin.
Bul úlgi geyde "qásiyetler tómenge aǵadı, háreketler joqarıǵa aǵadı" dep aytıladı. Flux payda bolǵannan beri onıń kóp implementaciyaları jaratıldı, olardıń arasında eń belgilisi, bálkim, Redux bolıp, ol bir dúkanǵa iye, kóbinese haqıyqattıń jalǵız deregi dep ataladı[39].
2019-jıldıń fevral ayında useReducer React huki 16.8 versiyasında tanıstırıldı. Ol Redux penen úylesimli API-dı usınadı, bul programmistlerge komponent halatlarına jergilikli bolǵan Redux-ke uqsas dúkanlardı jaratıwǵa múmkinshilik beredi[40].
Keleshektegi rawajlanıw
Proekttiń halatın tiykarǵı komandanıń talqılaw forumı arqalı baqlawǵa boladı[41]. Biraq, React-taǵı úlken ózgerisler Future of React repozitoriyiniń máseleleri hám tartıw sorawları arqalı ótedi[42][43]. Bul React jámiyetine jańa potencial múmkinshilikler, eksperimental API-lar hám JavaScript sintaksisin jaqsılaw boyınsha pikir bildiriwge múmkinshilik beredi.
Tariyxı
React-ti Meta kompaniyasınıń programmalıq támiyinlew injeneri Djordan Uolk jarattı. Ol dáslep "F-Bolt"[44] dep atalǵan prototipti islep shıqtı, keyin onı "FaxJS" dep qayta atadı. Bul erte versiya Djordan Uolktiń GitHub repozitoriyinde hújjetlestirilgen. Proektke tásir etken nárseler arasında XHP, PHP ushın HTML komponent kitapxanası bar edi.
React birinshi ret 2011-jılı Facebook-tıń Jańalıqlar lentasında qollanıldı hám keyin 2012-jılı Instagram-ǵa integraciyalandı. 2013-jıldıń may ayında, JSConf US konferenciyasında proekt rásmiy túrde ashıq kodlı etip járiyalandı, bul onıń qabıl etiliwi hám ósiwinde áhmiyetli burılıs noqatı boldı.
React Native, Android, iOS hám UWP ushın nativlik rawajlandırıwdı React penen ámelge asırıwǵa múmkinshilik beretuǵın texnologiya, 2015-jıldıń fevral ayında Facebook-tıń React konferenciyasında járiyalandı hám 2015-jıldıń mart ayında ashıq kodlı etip shıǵarıldı.
2017-jıldıń 18-aprelinde Facebook React Fiber haqqında járiyaladı. Bul React-tiń eski rendering algoritmi Stack-ke qaraǵanda, jańa ishki rendering algoritmler toplamı edi. React Fiber React kitapxanasınıń keleshektegi hár qanday jaqsılanıwları hám funkciyalar rawajlanıwı ushın tiykar bolıwı kerek edi.[45] React penen programmalastırıw ushın haqıyqıy sintaksis ózgermeydi; tek sintaksistiń orınlanıw usılı ózgergen[46].React-tiń eski rendering sisteması Stack, sistemanıń dinamikalıq ózgerislerge itibarı tolıq túsinilmegen waqıtta islep shıǵılǵan edi. Mısalı, Stack quramalı animaciyalardı sızıwda áste bolıp, onıń hámmesin bir bólekte orınlawǵa háreket etti. Fiber animaciyanı bir neshe kadrlarǵa bólistiriliwi múmkin bolǵan segmentlerge bóledi. Sonday-aq, betiń strukturası bólek saqlanıwı hám jańalanıwı múmkin bolǵan segmentlerge bóliniwi múmkin. JavaScript funkciyaları hám virtual DOM obektleri "fayberler" dep ataladı, hám hárbiri bólek isletiliwi hám jańalanıwı múmkin, bul ekranda tegis rendering imkaniyatın beredi[47].
2017-jıldıń 26-sentyabrinde React 16.0 versiyası jámiyetshilikke járiyalandı[48].
2020-jıldıń 10-avgustında React komandası React v17.0 ushın birinshi reliz-kandidattı járiyaladı, bul React baǵdarlamashı-baǵdarlı API-de úlken ózgerisler bolmaǵan birinshi úlken reliz retinde belgili boldı.
2022-jıldıń 29-martında React 18 járiyalandı, ol jańa parallel renderer, avtomatik toplamlastırıw hám Suspense járdeminde server tárepinen rendering qollawın kirgizdi[49].
Licenziyalaw
2013-jıldıń may ayında React-tiń dáslepki jámiyetlik relizi Apache License 2.0 licenziyasın qollandı. 2014-jıldıń oktyabr ayında React 0.12.00 versiyası bunı 3-punktli BSD licenziyası menen almastırdı hám baǵdarlamalıq támiyinatqa baylanıslı qálegen Facebook patentlerin qollanıwǵa ruqsat beretuǵın ayrıqsha PATENTS tekst faylın qostı[50]:
Usı jerde berilgen licenziya avtomat túrde hám eskertiwsiz toqtatıladı, eger kim de kim tómendegilerdi tastıyıqlap talap qoysa (sonıń ishinde qanday da bir sud isin, málimleme yamasa basqa háreketti kirgiziw arqalı): (a) tuwrıdan-tuwrı, janapay yamasa járdemshi patent buzıwshılıq yamasa patentti buzıwǵa túrtki bolıw: (i) Facebook yamasa onıń qálegen filialları yamasa baylanıslı kompaniyaları tárepinen, bul talap Baǵdarlamalıq támiynatqa baylanıslı bolsa da, bolmasa da, (ii) eger bunday talap tolıǵı menen yamasa biraz Facebook yamasa onıń qálegen filialları yamasa baylanıslı kompaniyalarınıń qálegen baǵdarlamalıq támiynatı, ónimi yamasa xızmetinen kelip shıqsa, bul talap Baǵdarlamalıq támiynatqa baylanıslı bolsa da, bolmasa da, yamasa (iii) qálegen táreptiń Baǵdarlamalıq támiynatqa baylanıslı talabı; yamasa (b) Facebook-tıń qálegen patent talabındaǵı qanday da bir huqıqtıń jaramsız yamasa orınlanbaytuǵının tastıyıqlaw.
Bul ádettegiden tıs bap React paydalanıwshılar jámiyetinde ayırım qarama-qarsılıq hám talqılawlardı keltirip shıǵardı, sebebi ol Facebook-qa kóp jaǵdaylarda licenziyanı biykarlaw imkaniyatın beriwi múmkin edi. Mısalı, eger Facebook licenziya alıwshıǵa qarsı sud isin ashsa hám onı blogta yamasa basqa jerde járiyalaw arqalı "basqa háreket" qılıwǵa májbúrlese. Kóp adamlar Facebook bul toqtatıw babın ádalatsız paydalanıwı múmkin ekenliginen yamasa React-ti ónimge biriktiriw startap kompaniyanıń keleshektegi satıp alınıwın qıyınlastırıwı múmkinliginen qáweterlendi[51]. Jámiyettiń pikirlerine tiykarlanıp, Facebook 2015-jıldıń aprel ayında patent beriwdi anıǵıraq hám kóbirek ruqsat beriwshi etip jańaladı[52]:
Usı jerde berilgen licenziya, eger siz (yamasa siziń qálegen filialıńız, korporativ baylanıslı kompaniyańız yamasa agentińiz) tikkeley yamasa janapay túrde baslasańız, yamasa qálegen Patent Talabında tikkeley finanslıq máp kórseńiz, avtomat túrde hám eskertiwsiz toqtatıladı: (i) Facebook-qa yamasa onıń qálegen filialına yamasa korporativ baylanıslı kompaniyasına qarsı, (ii) eger bunday Patent Talabı Facebook-tıń yamasa onıń qálegen filialınıń yamasa korporativ baylanıslı kompaniyasınıń qálegen programmalıq támiynatı, texnologiyası, ónimi yamasa xızmetinen tolıq yamasa bir bólegi kelip shıqsa, qálegen tárepke qarsı, yamasa (iii) Programmalıq támiynatqa baylanıslı qálegen tárepke qarsı. [...] "Patent Talabı" dep qálegen patentti tikkeley, janapay yamasa járdemshi túrde buzıw yamasa buzıwǵa túrtki bolıw haqqında ayıplawdı óz ishine alǵan qálegen sud isi yamasa basqa háreket, sonıń ishinde qarsı talap yamasa qarsı dawa esaplanadı.[53].
Apache Programmalıq Támiynat Fondı bul licenziyalaw tártibin óziniń licenziyalaw siyasatı menen sáykes kelmeydi dep esapladı, sebebi ol "biziń programmalıq támiynatımızdı paydalanıwshılarǵa qáwip-qáterdi jetkeredi, bul licenziya beriwshiniń paydasına, licenziya alıwshınıń emes, sonlıqtan biziń universal donor bolıw haqqındaǵı Apache nızamlıq siyasatımızdı buzadı" hám "olar [Apache License 2.0] de tabılǵan shártlerdiń qosımsha toplamı emes hám olar [Apache License 2.0] sıpatında qayta licenziyalanıwı múmkin emes"[54]. 2017-jıldıń avgust ayında Facebook Apache Fondınıń tómengi aǵım qáwipleri haqqındaǵı tastıyıqlawın biykarladı hám óz licenziyasın qayta qarawdan bas tarttı[55][56]. Keyingi ayda WordPress óziniń Gutenberg hám Calypso proektlerin React-tan basqa texnologiyaǵa ótkeriwdi sheshti[57].
2017-jıl 23-sentyabrde Facebook kelesi háptede Flow, Jest, React hám Immutable.js ti standart MIT licenziyası boyınsha qayta licenziyalaytuǵının járiyaladı; kompaniya React tiń "veb ushın ashıq kodlı programmalıq támiynattıń keń ekosistemasınıń tiykarı" ekenin hám olar "texnikalıq emes sebepler boyınsha alǵa ilgerilewdi toqtatqısı kelmeytuǵının" bildirdi[58].
2017-jıl 26-sentyabrde React 16.0.0 versiyası MIT licenziyası menen shıǵarıldı[59]. MIT licenziyasına ózgertiw React 15.6.2 versiyası menen 15.x shıǵarılım qatarına da kirgizilgen[60].
Sonday-aq qarań
- Angular (veb freymvork)
- Backbone.js
- Ember.js
- Gatsby (JavaScript freymvork)
- Next.js
- TypeScript
- Svelte
- Vue.js
- JavaScript tiykarlanǵan veb freymvorkların salıstırıw
- Veb komponentler
Derekler
- 1 2 3 «React – A JavaScript library for building user interfaces.» (en-US). reactjs.org. 2018-jıl 8-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 7-aprel.
Silteme kórsetiwdegi qátelik: Invalid
<ref>tag; name "reactjs.org-3" defined multiple times with different content - ↑ «Chapter 1. What Is React? - What React Is and Why It Matters [Book»] (en). www.oreilly.com. 2023-jıl 6-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 6-may.
- ↑ Krill. «React: Making faster, smoother UIs for data-driven Web apps». InfoWorld (2014-jıl 15-may). 2018-jıl 12-iyun sánesinde túp nusqadan arxivlendi. Qaraldı: 2021-jıl 23-fevral.
- ↑ Hemel. «Facebook's React JavaScript User Interfaces Library Receives Mixed Reviews» (en-US). infoq.com (2013-jıl 3-iyun). 2022-jıl 26-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2022-jıl 11-yanvar.
- ↑ Dawson. «JavaScript's History and How it Led To ReactJS» (en-US). The New Stack (2014-jıl 25-iyul). 2020-jıl 6-avgust sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 19-iyul.
- ↑ Dere 2017.
- ↑ Panchal 2022.
- ↑ «React Introduction» (en-US). GeeksforGeeks (2017-jıl 27-sentyabr). Qaraldı: 2024-jıl 12-oktyabr.
- 1 2 3 4 5 6 7 8 9 10 Wieruch 2020.
- ↑ Schwarzmüller 2018.
- ↑ «Components and Props». React. Facebook. 2018-jıl 7-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 7-aprel.
- 1 2 3 4 5 6 Larsen 2021.
- ↑ «Introducing Hooks». react.js. 2018-jıl 25-oktyabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2019-jıl 20-may.
- ↑ «Hooks at a Glance – React» (en). reactjs.org. 2023-jıl 15-mart sánesinde túp nusqadan arxivlendi. Qaraldı: 2019-jıl 8-avgust.
- ↑ «What the Heck is React Hooks?» (en). Soshace (2020-jıl 16-yanvar). 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- ↑ «Using the State Hook – React» (en). reactjs.org. 2022-jıl 30-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- 1 2 3 «Using the State Hook – React» (en). reactjs.org. 2022-jıl 30-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- ↑ «Using the Effect Hook – React» (en). reactjs.org. 2022-jıl 1-avgust sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- ↑ «Hooks API Reference – React» (en). reactjs.org. 2022-jıl 5-avgust sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- ↑ «Rules of Hooks – React» (en). reactjs.org. 2021-jıl 6-iyun sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- ↑ «Building Your Own Hooks – React» (en). reactjs.org. 2022-jıl 17-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2020-jıl 24-yanvar.
- ↑ «React Labs: What We've Been Working On – March 2023» (en). react.dev. 2023-jıl 26-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 23-iyul.
- ↑ Abramov. «Introducing Zero-Bundle-Size React Server Components» (en). react.dev (2020-jıl 21-dekabr). Qaraldı: 2024-jıl 28-sentyabr.
- ↑ Chourasia. «Convert Class Component to Function(Arrow) Component – React». Code Part Time (2023-jıl 8-mart). 2023-jıl 15-avgust sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 15-avgust.
- ↑ «Mastering React Router – The Ultimate Guide» (en-US) (2023-jıl 12-iyul). 2023-jıl 26-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 26-iyul.
- ↑ «Refs and the DOM». React Blog. 2022-jıl 7-avgust sánesinde túp nusqadan arxivlendi. Qaraldı: 2021-jıl 19-iyul.
- ↑ «React: The Virtual DOM» (en). Codecademy. 2021-jıl 28-oktyabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2021-jıl 14-oktyabr.
- ↑ «ReactDOM – React» (en). reactjs.org. 2023-jıl 8-yanvar sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 8-yanvar.
- ↑ «Reconciliation – React» (en). reactjs.org. 2023-jıl 8-yanvar sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 8-yanvar.
- ↑ «React.Component – React» (en). legacy.reactjs.org. 2024-jıl 9-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2024-jıl 9-aprel.
- ↑ «Draft: JSX Specification» (en-US). JSX. Facebook (2022-jıl 8-mart). 2022-jıl 2-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 7-aprel.
- ↑ Hunt. «Why did we build React? – React Blog» (en-US). reactjs.org (2013-jıl 5-iyun). 2015-jıl 6-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2022-jıl 17-fevral.
- ↑ «PayPal Isomorphic React». medium.com (2015-jıl 27-aprel). 2019-jıl 8-fevral sánesinde túp nusqadan arxivlendi. Qaraldı: 2019-jıl 8-fevral.
- ↑ «Netflix Isomorphic React» (en-US). netflixtechblog.com (2015-jıl 28-yanvar). 2016-jıl 17-dekabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2022-jıl 14-fevral.
- ↑ «In Depth OverView». Flux. Facebook. 2022-jıl 7-avgust sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 7-aprel.
- ↑ «Flux Release 4.0». Github. 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2021-jıl 26-fevral.
- ↑ Johnson. «Introduction to Flux – React Exercise». Nicholas Johnson. 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 7-aprel.
- ↑ Abramov. «The History of React and Flux with Dan Abramov». Three Devs and a Maybe. 2018-jıl 19-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 7-aprel.
- ↑ «State Management Tools – Results». The State of JavaScript. 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2021-jıl 29-oktyabr.
- ↑ «React v16.8: The One with Hooks». 2023-jıl 8-yanvar sánesinde túp nusqadan arxivlendi. Qaraldı: 2023-jıl 8-yanvar.
- ↑ «Meeting Notes». React Discuss. 2015-jıl 22-dekabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 13-dekabr.
- ↑ «reactjs/react-future – The Future of React». GitHub. 2022-jıl 13-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 13-dekabr.
- ↑ «facebook/react – Feature request issues». GitHub. 2022-jıl 9-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 13-dekabr.
- ↑ «React.js: The Documentary». Youtube. Honeypot (2023-jıl 10-fevral). 2024-jıl 19-yanvar sánesinde túp nusqadan arxivlendi. Qaraldı: 2024-jıl 27-may.
- ↑ Lardinois 2017.
- ↑ «React Fiber Architecture». Github. 2018-jıl 10-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 19-aprel.
- ↑ «GitHub – acdlite/react-fiber-architecture: A description of React's new core algorithm, React Fiber». github.com. 2018-jıl 10-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2018-jıl 19-oktyabr.
- ↑ «React v16.0». react.js (2017-jıl 26-sentyabr). 2017-jıl 3-oktyabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2019-jıl 20-may.
- ↑ «React v18.0» (en). reactjs.org. 2022-jıl 29-mart sánesinde túp nusqadan arxivlendi. Qaraldı: 2022-jıl 12-aprel.
- ↑ «React CHANGELOG.md». GitHub. 2020-jıl 28-aprel sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 9-dekabr.
- ↑ Liu. «A compelling reason not to use ReactJS». Medium. 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 9-dekabr.
- ↑ «Updating Our Open Source Patent Grant». 2020-jıl 8-noyabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 9-dekabr.
- ↑ «Additional Grant of Patent Rights Version 2». GitHub. 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2015-jıl 9-dekabr.
- ↑ «ASF Legal Previously Asked Questions» (en). Apache Software Foundation. 2018-jıl 6-fevral sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 16-iyul.
- ↑ «Explaining React's License» (en). Facebook. 2021-jıl 6-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 18-avgust.
- ↑ «Consider re-licensing to AL v2.0, as RocksDB has just done» (en). Github. 2022-jıl 27-iyul sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 18-avgust.
- ↑ «WordPress to ditch React library over Facebook patent clause risk» (en). TechCrunch (2017-jıl 15-sentyabr). 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 16-sentyabr.
- ↑ «Relicensing React, Jest, Flow, and Immutable.js» (en). Facebook Code (2017-jıl 23-sentyabr). 2020-jıl 6-dekabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 23-sentyabr.
- ↑ Clark. «React v16.0§MIT licensed». React Blog (2017-jıl 26-sentyabr). 2017-jıl 3-oktyabr sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 18-oktyabr.
- ↑ Hunzaker. «React v15.6.2». React Blog (2017-jıl 25-sentyabr). 2022-jıl 31-may sánesinde túp nusqadan arxivlendi. Qaraldı: 2017-jıl 18-oktyabr.