{"id":762,"date":"2024-11-01T01:47:27","date_gmt":"2024-11-01T01:47:27","guid":{"rendered":"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/"},"modified":"2024-11-01T01:47:27","modified_gmt":"2024-11-01T01:47:27","slug":"nauja-react-native-architektura","status":"publish","type":"post","link":"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/","title":{"rendered":"Nauja \u201eReact Native\u201c architekt\u016bra"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div id=\"\">\n<p>Po 6 met\u0173 k\u016brimo \u201eReact Native\u201c komanda pristat\u0117 visi\u0161kai perra\u0161yt\u0105 sistemos architekt\u016br\u0105 (0,76) \u2013 reik\u0161mingiausi\u0105 atnaujinim\u0105 nuo \u201eReact Native\u201c \u012fk\u016brimo. Tai didelio darbo, siekiant pagerinti platformos na\u0161um\u0105, stabilum\u0105 ir funkcijas, rezultatas.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Turinys:<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Pagrindiniai_pakeitimai\" >Pagrindiniai pakeitimai<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Nasumo_patobulinimai\" >Na\u0161umo patobulinimai<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Techniniai_patobulinimai\" >Techniniai patobulinimai<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Irodyta_gamyboje\" >\u012erodyta gamyboje<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Migracijos_procesas\" >Migracijos procesas<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Tolesne_pletra\" >Tolesn\u0117 pl\u0117tra<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/infonaujiena.lt\/index.php\/2024\/11\/01\/nauja-react-native-architektura\/#Praktine_informacija\" >Praktin\u0117 informacija<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Pagrindiniai_pakeitimai\"><\/span>Pagrindiniai pakeitimai<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Naujoji versija visi\u0161kai palaiko modernias \u201eReact\u201c funkcijas, \u012fskaitant \u201eSuspense\u201c, \u201eTransitions\u201c ir automatin\u012f paket\u0173 sudarym\u0105. \u201eReact Native\u201c pagaliau turi visavert\u012f \u201euseLayoutEffect\u201c \u2013 dabar \u201eleyout\u201c tvarkymas dabar yra sinchroni\u0161kas ir nusp\u0117jamas. Tai leid\u017eia teisingai i\u0161d\u0117styti vartotojo s\u0105sajos elementus be tarpini\u0173 b\u016bsen\u0173 ir vaizdini\u0173 artefakt\u0173.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Nasumo_patobulinimai\"><\/span>Na\u0161umo patobulinimai<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Tiltas tarp JavaScript ir vietinio kodo buvo visi\u0161kai pa\u0161alintas. Dabar bendravimas vyksta tiesiogiai per \u201eJavaScript\u201c s\u0105saj\u0105 (JSI), kuri \u017eymiai pagreitina programos veikim\u0105 ir paleidim\u0105. Naujasis atvaizdavimo \u012frenginys gali vienu metu apdoroti kelis komponent\u0173 med\u017eius skirtingose \u200b\u200bgijose su skirtingais prioritetais. Tai leid\u017eia pertraukti \u017eemo prioriteto naujinimus, kad b\u016bt\u0173 galima apdoroti vartotojo \u012fvest\u012f, u\u017etikrinant reaguojan\u010di\u0105 s\u0105saj\u0105 net atliekant sud\u0117tingus skai\u010diavimus.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Techniniai_patobulinimai\"><\/span>Techniniai patobulinimai<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Savoji moduli\u0173 sistema buvo visi\u0161kai pertvarkyta. Dabar pasiekiama sinchronizuota prieiga prie sav\u0173j\u0173 s\u0105saj\u0173 su visa tipo sauga tarp JavaScript ir savojo kodo. Dabar galima ra\u0161yti keli\u0173 platform\u0173 C++ kod\u0105, kuris veikia visose palaikomose platformose: iOS, Android, Windows ir macOS. Moduliai \u012fkeliami atsainiai, \u017eenkliai suma\u017einant program\u0117l\u0117s paleidimo laik\u0105 ir atminties s\u0105naudas.<\/p>\n<p>Vaizdo i\u0161lyginimas, anks\u010diau pasiekiamas tik \u201eAndroid\u201c, dabar veikia ir \u201eiOS\u201c d\u0117l bendro C++ atvaizdavimo priemon\u0117s. \u0160is optimizavimas automati\u0161kai supaprastina giluminius komponent\u0173 med\u017eius ir pagerina atvaizdavimo na\u0161um\u0105.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Irodyta_gamyboje\"><\/span>\u012erodyta gamyboje<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Naujoji architekt\u016bra jau aktyviai naudojama pagrindin\u0117se programose: Facebook, Instagram, Expensify, Kraken ir BlueSky. \u201eFacebook\u201c ir \u201eInstagram\u201c, skirti \u201eMeta Quest\u201c, taip pat yra sukurti remiantis nauja architekt\u016bra. Tai parodo jo pasirengim\u0105 naudoti bet kokio masto ir sud\u0117tingumo projektuose.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Migracijos_procesas\"><\/span>Migracijos procesas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Daugum\u0105 program\u0173 bus galima atnaujinti su tokiomis pat pastangomis kaip ir \u012fprastas leidimas. Daugiau nei 850 populiari\u0173 bibliotek\u0173 jau palaiko nauj\u0105 architekt\u016br\u0105, \u012fskaitant visas bibliotekas, kuriose kas savait\u0119 atsisiun\u010diama daugiau nei 200 t\u016bkst. D\u0117l automatinio suderinamumo su sen\u0105ja architekt\u016bra sluoksnio perk\u0117limas gali b\u016bti laipsni\u0161kas \u2013 nereikia i\u0161 karto perra\u0161yti visos programos.<\/p>\n<p>Populiarios bibliotekos, tokios kaip react-native-mmkv ir Reanimated, jau pasteb\u0117jo reik\u0161mingus patobulinimus nuo per\u0117jimo prie naujos architekt\u016bros. MMKV tapo visi\u0161kai keli\u0173 platform\u0173 C++ moduliu su patobulinta tipo sauga, o Reanimated 4 \u012fgijo galimyb\u0119 valdyti animacijas ir i\u0161d\u0117stym\u0105 skirtingose \u200b\u200bgijose.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Tolesne_pletra\"><\/span>Tolesn\u0117 pl\u0117tra<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u201eReact Native\u201c komanda planuoja tobulinti \u012ftaisytuosius komponentus ir i\u0161pl\u0117sti \u0161iuolaikini\u0173 \u017einiatinklio standart\u0173 palaikym\u0105. \u201eEvent Loop\u201c dabar veikia pagal HTML standarto \u017einiatinklio specifikacijas, kurios ateityje leis naudoti API, pvz., \u201emicrotasks\u201c, \u201eMutationObserver\u201c ir \u201eIntersectionObserver\u201c.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Praktine_informacija\"><\/span>Praktin\u0117 informacija<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Naudojam\u0173 bibliotek\u0173 suderinamum\u0105 galima patikrinti reactnative.directory. Oficialioje dokumentacijoje yra i\u0161samus perk\u0117limo vadovas. Jei kyla problem\u0173, visada yra galimyb\u0117 i\u0161jungti nauj\u0105 architekt\u016br\u0105 per projekto konfig\u016bracij\u0105.<\/p>\n<\/p><\/div>\n<p>Jei tekste radote klaid\u0105, si\u0173skite prane\u0161im\u0105 autoriui pa\u017eym\u0117dami klaid\u0105 ir paspausdami Ctrl-Enter.<\/p>\n<div>\n<p>        Nor\u0117dami komentuoti, turite b\u016bti prisijung\u0119.<\/p>\n<p>                <i class=\"fa icon-login\"\/>  Prisijunkite<\/p>\n<\/p><\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/techplanet.today\/post\/new-architecture-of-react-native\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Po 6 met\u0173 k\u016brimo \u201eReact Native\u201c komanda pristat\u0117 visi\u0161kai perra\u0161yt\u0105 sistemos architekt\u016br\u0105 (0,76) \u2013 reik\u0161mingiausi\u0105 atnaujinim\u0105 nuo \u201eReact Native\u201c \u012fk\u016brimo. Tai didelio darbo, siekiant pagerinti platformos na\u0161um\u0105, stabilum\u0105 ir funkcijas, rezultatas. Pagrindiniai pakeitimai Naujoji versija visi\u0161kai palaiko modernias \u201eReact\u201c funkcijas, \u012fskaitant \u201eSuspense\u201c, \u201eTransitions\u201c ir automatin\u012f paket\u0173 sudarym\u0105. \u201eReact Native\u201c pagaliau turi visavert\u012f \u201euseLayoutEffect\u201c \u2013 dabar [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":763,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[3],"tags":[1290,50,544,49],"class_list":["post-762","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technologijos","tag-architektura","tag-native","tag-nauja","tag-react"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/posts\/762","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/comments?post=762"}],"version-history":[{"count":0,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/posts\/762\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/media\/763"}],"wp:attachment":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/media?parent=762"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/categories?post=762"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/tags?post=762"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}