{"id":9953,"date":"2022-06-23T15:13:48","date_gmt":"2022-06-23T13:13:48","guid":{"rendered":"https:\/\/vived.io\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/"},"modified":"2022-09-19T13:16:26","modified_gmt":"2022-09-19T11:16:26","slug":"frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/","title":{"rendered":"Frontend Thursday vol. 93 &#8211; przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$"},"content":{"rendered":"\n<h2 id=\"1-jak-bedzie-wygladac-przyszlosc-reacta\" data-num=1>1. Jak b\u0119dzie wygl\u0105da\u0107 przysz\u0142o\u015b\u0107 Reacta?<\/h2>\n\n\n\n<p>React 18 by\u0142 du\u017cym wydaniem, nad kt\u00f3rym zesp\u00f3\u0142 odpowiedzialny za bibliotek\u0119 pracowa\u0142 kilka lat. Najbardziej wyczekiwan\u0105 funkcjonalno\u015bci\u0105 by\u0142o wsp\u00f3\u0142bie\u017cne renderowanie, czyli mo\u017cliwo\u015b\u0107 priorytetowania render\u00f3w oraz przerywania ich przed zako\u0144czeniem (wi\u0119cej na ten temat dowiecie si\u0119 z <a href=\"https:\/\/vived.io\/frontend-thursday-vol-81-react-18\/\">81 edycji tego przegl\u0105du<\/a>). Od momentu wydania React 18 min\u0119\u0142y ju\u017c trzy miesi\u0105ce i doczekali\u015bmy si\u0119 2 wersji minor, kt\u00f3re wprowadza\u0142y g\u0142\u00f3wnie bugfixy. Je\u015bli zastanawiali\u015bcie si\u0119 co czeka w kolejnych latach Reacta, to zesp\u00f3\u0142 rozwijaj\u0105cy go postanowi\u0142 rozwia\u0107 w\u0105tpliwo\u015bci i podzieli\u0142 si\u0119 nad inicjatywami nad kt\u00f3rymi obecnie pracuje. Co wa\u017cne, nie jest to typowa roadmapa, bo poszczeg\u00f3lne inicjatywy nie posiadaj\u0105 ram czasowych, ani deadlin\u00f3w.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"889\" height=\"500\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klw9n.jpeg\" alt=\"\" class=\"wp-image-5448\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klw9n.jpeg 889w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klw9n-300x169.jpeg 300w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klw9n-768x432.jpeg 768w\" sizes=\"auto, (max-width: 889px) 100vw, 889px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">Server Side Components<\/h3>\n\n\n\n<p>Od kiedy komponenty renderowane po stronie serwera zosta\u0142y zaprezentowane \u015bwiatu przez Dana Abramova min\u0119\u0142o ju\u017c prawie p\u00f3\u0142tora roku. Je\u015bli nie kojarzycie koncepcji, to w du\u017cym skr\u00f3cie React umo\u017cliwia\u0142 b\u0119dzie wyrenderowanie pojedynczego komponentu po stronie serwera i przes\u0142anie kodu HTML do klienta. Mi podej\u015bcie takie mocno przypomina na PHP, bo mo\u017cliwe jest wykonywanie zapyta\u0144 do bazy danych bezpo\u015brednio z komponent\u00f3w. Je\u015bli jeste\u015bcie ciekawi szczeg\u00f3\u0142\u00f3w to polecam wspomnian\u0105 prezentacj\u0119 sprzed p\u00f3\u0142tora roku:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"embed-responsive embed-responsive-16by9\"><iframe loading=\"lazy\" title=\"Data Fetching with React Server Components\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/TQQPAU21ZUw?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<p>Server Side Components doczeka\u0142y si\u0119 ostatnio kilku drobnych zmian w API. Najwa\u017cniejsze jest jednak to, \u017ce wsp\u00f3\u0142bie\u017cne funkcjonalno\u015bci Reacta 18 umo\u017cliwi\u0142y wreszcie rozpocz\u0119cie prac nad ostateczn\u0105 wersj\u0105 funkcjonalno\u015bci. To oznacza, \u017ce z du\u017cym prawdopodobie\u0144stwem komponenty renderowane po stronie serwera zobaczymy w finalnej wersji jeszcze przed wydaniem React 19.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"559\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klwdi.jpeg\" alt=\"\" class=\"wp-image-5449\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klwdi.jpeg 500w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klwdi-268x300.jpeg 268w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">Offscreen<\/h3>\n\n\n\n<p>Offscreen to kolejna funkcjonalno\u015b\u0107, kt\u00f3ra zosta\u0142a odblokowana dzi\u0119ki wydaniu React 18. Ma ona umo\u017cliwi\u0107 renderowanie komponent\u00f3w poza ekranem, bez konieczno\u015bci montowania ich do struktury HTML. Komponenty takie nie b\u0119d\u0105 wi\u0119c wp\u0142ywa\u0107 na wydajno\u015b\u0107 naszych aplikacji, bo dzi\u0119ki wsp\u00f3\u0142bie\u017cnym renderowaniu traktowane b\u0119d\u0105 jako nisko priorytetowe.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"598\" height=\"420\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-5.jpeg\" alt=\"\" class=\"wp-image-5451\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-5.jpeg 598w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-5-300x211.jpeg 300w\" sizes=\"auto, (max-width: 598px) 100vw, 598px\" \/><\/figure><\/div>\n\n\n<p>Komponenty renderowane poza ekranem b\u0119dziemy mogli wykorzysta\u0107 chocia\u017cby do \u0142adowania kolejnych stron jakie odwiedzi u\u017cytkownik w przysz\u0142o\u015bci u\u017cytkownik. Dzi\u0119ki temu wszystkie potrzebne dane b\u0119d\u0105 ju\u017c za\u0142adowane, a animacja przej\u015bcia mi\u0119dzy stronami jeszcze p\u0142ynniejsza. Innym \u015bwietnym przyk\u0142adem jest implementacja niesko\u0144czonej wirtualnej listy, kt\u00f3ra poza ekranem wyrenderuje elementy, kt\u00f3re za\u0142adowane zostan\u0105 zaraz po rozpocz\u0119ciu scrollowania.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Optymalizacja Kompilatora<\/h3>\n\n\n\n<p>Pami\u0119tacie jeszcze prezentacj\u0119 z ostatniego React Conf, obiecuj\u0105c\u0105, \u017ce ju\u017c nigdy wi\u0119cej nie b\u0119dziemy musieli u\u017cywa\u0107 `useMemo` i `useCallback`? Je\u015bli nie, to ponownie pos\u0142u\u017c\u0119 jako Wasza pami\u0119\u0107 zewn\u0119trzn\u0105 i poni\u017cej znajdziecie t\u0105 w\u0142a\u015bnie prezentacj\u0119 (TLDR: Magiczna biblioteka\/kompilator doda za was useMemo i useCallback tam gdzie jest to potrzebne)<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"embed-responsive embed-responsive-16by9\"><iframe loading=\"lazy\" title=\"React without memo\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/lGEMwh32soc?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<p>Od grudnia wie\u015bci o projekcie troch\u0119 umilk\u0142y. Na szcz\u0119\u015bcie nie zosta\u0142 on zamkni\u0119ty i zesp\u00f3\u0142 Reacta nadal pracuje nad jego implementacj\u0105. Ja czekam niecierpliwie, bo im mniej powtarzalnego i wt\u00f3rnego kodu tym lepiej (tak, na Ciebie patrz\u0119 Angular).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"622\" height=\"500\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klws6-1.jpeg\" alt=\"\" class=\"wp-image-5453\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klws6-1.jpeg 622w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klws6-1-300x241.jpeg 300w\" sizes=\"auto, (max-width: 622px) 100vw, 622px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\"><\/h3>\n\n\n\n<p>To oczywi\u015bcie nie wszystko nad czym obecnie pracuje zesp\u00f3\u0142 Reacta. W podlinkowanej poni\u017cej notatce znajdziecie wzmianki chocia\u017ccby o dalszej pracy nad now\u0105 dokumentacj\u0105 czy usprawnieniami dla renderowania po stronie serwera. Musz\u0119 przyzna\u0107, \u017ce nowe funkcjonalno\u015bci zapowiadaj\u0105 si\u0119 naprawd\u0119 \u015bwietnie. Szkoda tylko, \u017ce wi\u0119kszo\u015b\u0107 z nich nie jest jeszcze osadzona w czasie. No c\u00f3\u017c, pozostaje nam tylko trzyma\u0107 kciuki, \u017ce tym razem p\u00f3jdzie szybciej ni\u017c w przypadku wsp\u00f3\u0142bie\u017cnego renderowania, nad kt\u00f3rym prace trwa\u0142y kilka lat i wielokrotnie zmienia\u0142 on swoje API.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a:<\/h3>\n\n\n\n<p><a href=\"https:\/\/reactjs.org\/blog\/2022\/06\/15\/react-labs-what-we-have-been-working-on-june-2022.html\">https:\/\/reactjs.org\/blog\/2022\/06\/15\/react-labs-what-we-have-been-working-on-june-2022.html<\/a><\/p>\n\n\n\n<h2 id=\"2-deno-zgarnia-21-milionow-dolarow\" data-num=2>2. Deno zgarnia 21 milion\u00f3w dolar\u00f3w<\/h2>\n\n\n\n<p>Deno to \u015brodowisko uruchomieniowe JavaScript od tw\u00f3rcy Node.js, kt\u00f3ry postanowi\u0142 naprawi\u0107 b\u0142\u0119dy projektowe jakie pope\u0142ni\u0142 przy projektowaniu poprzedniego projektu. Jakie to b\u0142\u0119dy? No c\u00f3\u017c, nikt nie wyt\u0142umaczy tego lepiej ni\u017c on sam<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"embed-responsive embed-responsive-16by9\"><iframe loading=\"lazy\" title=\"10 Things I Regret About Node.js - Ryan Dahl - JSConf EU\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/M3BM9TB-8yA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<p>Rok temu Deno przekszta\u0142ci\u0142o si\u0119 z projektu otwarto \u017ar\u00f3d\u0142owego w pe\u0142noprawny startup z finansowaniem opiewaj\u0105cym na 5 milion\u00f3w dolar\u00f3w. Firma obiecywa\u0142a skupi\u0107 si\u0119 na rozwoju swojej w\u0142asnej chmury mocno inspirowanej CloudFlare. Po roku dzia\u0142ania firmy Deno Deploy nadal jest w becie, ale firmie uda\u0142o si\u0119 ju\u017c znale\u017a\u0107 kilku ciekawych klient\u00f3w. Zar\u00f3wno Supabase (otwarto\u017ar\u00f3d\u0142owa alternatywa Firebase) jak i Netlify postanowi\u0142y oprze\u0107 swoje Edge Functions w\u0142a\u015bnie o chmur\u0119 Deno.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"516\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klxzf.jpeg\" alt=\"\" class=\"wp-image-5454\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klxzf.jpeg 500w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klxzf-291x300.jpeg 291w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/figure><\/div>\n\n\n<p>W minionym tygodniu Deno Company poinformowa\u0142o, \u017ce fundusz inwestycyjny Sequoia Capital postanowi\u0142 zainwestowa\u0107 w firm\u0119 21 milion\u00f3w dolar\u00f3w. Z notatki informuj\u0105cej o kolojnej rundzie finansowanie dowiadujemy si\u0119, \u017ce firma nie zmienia swoich priorytet\u00f3w i kontynuowa\u0107 b\u0119dzie prac\u0119 nad swoj\u0105 chmur\u0105. Kolejny zastrzyk got\u00f3wki na pewno Deno nie zaszkodzi, a troch\u0119 konkurencji na rynku \u015brodowisk uruchomieniowych dzia\u0142a tylko na korzy\u015b\u0107 programist\u00f3w.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"697\" height=\"500\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klx9c.jpeg\" alt=\"\" class=\"wp-image-5455\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klx9c.jpeg 697w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klx9c-300x215.jpeg 300w\" sizes=\"auto, (max-width: 697px) 100vw, 697px\" \/><figcaption>Co interesuj\u0105ce, w\u015br\u00f3d inwestor\u00f3w znale\u017a\u0107 mo\u017cna r\u00f3wnie\u017c Netlify. Mo\u017ce sugerowa\u0107 to, \u017ce w najbli\u017cszych miesi\u0105cach wsp\u00f3\u0142praca mi\u0119dzy obiema firmami jeszcze bardziej si\u0119 zacie\u015bni.\u00a0<\/figcaption><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a:<\/h3>\n\n\n\n<p><a href=\"https:\/\/deno.com\/blog\/series-a\">https:\/\/deno.com\/blog\/series-a<\/a><br><a href=\"https:\/\/deno.com\/blog\/the-deno-company\">https:\/\/deno.com\/blog\/the-deno-company<\/a><br><a href=\"https:\/\/deno.com\/blog\/netlify-edge-functions-on-deno-deploy\">https:\/\/deno.com\/blog\/netlify-edge-functions-on-deno-deploy<\/a><br><a href=\"https:\/\/deno.com\/blog\/supabase-functions-on-deno-deploy\">https:\/\/deno.com\/blog\/supabase-functions-on-deno-deploy<\/a><\/p>\n\n\n\n<h2 id=\"3-node-16-pozyje-siedem-miesiecy-krocej\" data-num=3>3. Node 16 po\u017cyje siedem miesi\u0119cy kr\u00f3cej<\/h2>\n\n\n\n<p>Node posiada bardzo jasn\u0105 polityk\u0119 wspierania kolejnych wersji. Je\u015bli wersja posiada numer nieparzysty, to wspierana jest przez 6 miesi\u0119cy, je\u015bli parzysty to jest to wersja LTS i \u0142atki bezpiecze\u0144stwa otrzymywa\u0107 b\u0119dzie przez 30 miesi\u0119cy. Innymi s\u0142owy wersje LTS ukazuj\u0105 si\u0119 co 2 lata i przeplatane s\u0105 wersjami z kr\u00f3tszym wsparciem.&nbsp;<\/p>\n\n\n\n<p>W minionym tygodniu na blogu Node pojawi\u0142a si\u0119 notatka informuj\u0105ca o skr\u00f3ceniu wsparcia dla Node 16 (a wi\u0119c wersji LTS) o ca\u0142e 7 miesi\u0119cy. Oznacza to, \u017ce Node 16 dokona swojego \u017cywota w pa\u017adzierniku 2023. Do ko\u0144ca wsparcia zosta\u0142o jeszcze troch\u0119 czasu, ale je\u015bli utrzymujecie jaki\u015b serwis na tej wersji to jak najszybciej przygotujcie sobie taska na migracj\u0119.<\/p>\n\n\n\n<p>Sk\u0105d wynika decyzja o skr\u00f3conym wsparciu dla jednej z wersji LTS? Jest to zwi\u0105zane z ko\u0144cem wsparcia dla protoko\u0142u Open SSL 1.1.1 z kt\u00f3rego korzysta Node 16. Jak donosz\u0105 tw\u00f3rcy, rozwa\u017cana by\u0142a r\u00f3wnie\u017c alternatywa w postaci migracji do OpenSSL 3 lub skorzystanie z OpenSSL 1.1.1 od CentOS, ale obie opcje zosta\u0142y odrzucone ze wzgl\u0119du na problemy z kompatybilno\u015bci\u0105.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"725\" height=\"500\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-1-2.jpeg\" alt=\"\" class=\"wp-image-5457\" srcset=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-1-2.jpeg 725w, https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-1-2-300x207.jpeg 300w\" sizes=\"auto, (max-width: 725px) 100vw, 725px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a:<\/h3>\n\n\n\n<p><a href=\"https:\/\/nodejs.org\/en\/blog\/announcements\/nodejs16-eol\/\">https:\/\/nodejs.org\/en\/blog\/announcements\/nodejs16-eol\/<\/a><br><a href=\"https:\/\/nodejs.org\/en\/about\/releases\/\">https:\/\/nodejs.org\/en\/about\/releases\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kurz po wydaniu React 18 jeszcze na dobre nie opad\u0142, a zesp\u00f3\u0142 odpowiedzialny za bibliotek\u0119 ju\u017c zapowiada co czeka nas w jej kolejnych wersjach. Poza tym Deno zgarn\u0119\u0142o poka\u017an\u0105 rund\u0119 finansowania w wysoko\u015bci 21 milion\u00f3w dolar\u00f3w, a \u017cycie Node 16 zosta\u0142o skr\u00f3cone o ca\u0142e 7 miesi\u0119cy. Przygotujcie sobie co\u015b zimnego do picia, rozsi\u0105d\u017acie si\u0119 wygodnie i zapraszamy do lektury!<\/p>\n","protected":false},"author":12,"featured_media":8749,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[273],"tags":[],"class_list":["post-9953","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-frontend-pl"],"acf":{"weekly_summary":true,"push_notification_image":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png","feature_image_visible":false,"estimated_reading_time":"5","feature_image_blog":{"ID":8750,"id":8750,"title":"pexels-photo-123335","filename":"pexels-photo-123335.webp","filesize":39994,"url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335.webp","link":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/pexels-photo-123335-2\/","alt":"","author":"12","description":"","caption":"","name":"pexels-photo-123335-2","status":"inherit","uploaded_to":9953,"date":"2022-06-23 13:05:21","modified":"2022-06-23 13:05:21","menu_order":0,"mime_type":"image\/webp","type":"image","subtype":"webp","icon":"https:\/\/vived.io\/wp-includes\/images\/media\/default.png","width":1125,"height":750,"sizes":{"thumbnail":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335-150x150.webp","thumbnail-width":150,"thumbnail-height":150,"medium":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335-300x200.webp","medium-width":300,"medium-height":200,"medium_large":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335-768x512.webp","medium_large-width":768,"medium_large-height":512,"large":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335-1024x683.webp","large-width":1024,"large-height":683,"1536x1536":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335.webp","1536x1536-width":1125,"1536x1536-height":750,"2048x2048":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335.webp","2048x2048-width":1125,"2048x2048-height":750,"gform-image-choice-sm":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335.webp","gform-image-choice-sm-width":300,"gform-image-choice-sm-height":200,"gform-image-choice-md":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335.webp","gform-image-choice-md-width":400,"gform-image-choice-md-height":267,"gform-image-choice-lg":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/pexels-photo-123335.webp","gform-image-choice-lg-width":600,"gform-image-choice-lg-height":400}}},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Frontend Thursday vol. 93 - przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$ - Vived<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Frontend Thursday vol. 93 - przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$ - Vived\" \/>\n<meta property=\"og:description\" content=\"Kurz po wydaniu React 18 jeszcze na dobre nie opad\u0142, a zesp\u00f3\u0142 odpowiedzialny za bibliotek\u0119 ju\u017c zapowiada co czeka nas w jej kolejnych wersjach. Poza tym Deno zgarn\u0119\u0142o poka\u017an\u0105 rund\u0119 finansowania w wysoko\u015bci 21 milion\u00f3w dolar\u00f3w, a \u017cycie Node 16 zosta\u0142o skr\u00f3cone o ca\u0142e 7 miesi\u0119cy. Przygotujcie sobie co\u015b zimnego do picia, rozsi\u0105d\u017acie si\u0119 wygodnie i zapraszamy do lektury!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2022-06-23T13:13:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-19T11:16:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tomasz Borowicz\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\"},\"author\":{\"name\":\"Tomasz Borowicz\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/9d2a72fe7d0dfbb4092675afbab742bb\"},\"headline\":\"Frontend Thursday vol. 93 &#8211; przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$\",\"datePublished\":\"2022-06-23T13:13:48+00:00\",\"dateModified\":\"2022-09-19T11:16:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\"},\"wordCount\":1114,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png\",\"articleSection\":[\"Frontend\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\",\"url\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\",\"name\":\"Frontend Thursday vol. 93 - przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$ - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png\",\"datePublished\":\"2022-06-23T13:13:48+00:00\",\"dateModified\":\"2022-09-19T11:16:26+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png\",\"width\":1200,\"height\":628},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Frontend Thursday vol. 93 &#8211; przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/vived.io\/pl\/#website\",\"url\":\"https:\/\/vived.io\/pl\/\",\"name\":\"Vived\",\"description\":\"platform empowering IT people and technology companies to synergic growth\",\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/vived.io\/pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/vived.io\/pl\/#organization\",\"name\":\"Vived\",\"url\":\"https:\/\/vived.io\/pl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png\",\"width\":136,\"height\":45,\"caption\":\"Vived\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/9d2a72fe7d0dfbb4092675afbab742bb\",\"name\":\"Tomasz Borowicz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g\",\"caption\":\"Tomasz Borowicz\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Frontend Thursday vol. 93 - przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$ - Vived","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/","og_locale":"pl_PL","og_type":"article","og_title":"Frontend Thursday vol. 93 - przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$ - Vived","og_description":"Kurz po wydaniu React 18 jeszcze na dobre nie opad\u0142, a zesp\u00f3\u0142 odpowiedzialny za bibliotek\u0119 ju\u017c zapowiada co czeka nas w jej kolejnych wersjach. Poza tym Deno zgarn\u0119\u0142o poka\u017an\u0105 rund\u0119 finansowania w wysoko\u015bci 21 milion\u00f3w dolar\u00f3w, a \u017cycie Node 16 zosta\u0142o skr\u00f3cone o ca\u0142e 7 miesi\u0119cy. Przygotujcie sobie co\u015b zimnego do picia, rozsi\u0105d\u017acie si\u0119 wygodnie i zapraszamy do lektury!","og_url":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/","og_site_name":"Vived","article_published_time":"2022-06-23T13:13:48+00:00","article_modified_time":"2022-09-19T11:16:26+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png","type":"image\/png"}],"author":"Tomasz Borowicz","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/"},"author":{"name":"Tomasz Borowicz","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/9d2a72fe7d0dfbb4092675afbab742bb"},"headline":"Frontend Thursday vol. 93 &#8211; przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$","datePublished":"2022-06-23T13:13:48+00:00","dateModified":"2022-09-19T11:16:26+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/"},"wordCount":1114,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png","articleSection":["Frontend"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/","url":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/","name":"Frontend Thursday vol. 93 - przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$ - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png","datePublished":"2022-06-23T13:13:48+00:00","dateModified":"2022-09-19T11:16:26+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/FRONTEND-3.png","width":1200,"height":628},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/frontend-thursday-vol-93-przyszlosc-reacta-deno-zgarnia-21m\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"Frontend Thursday vol. 93 &#8211; przysz\u0142o\u015b\u0107 Reacta, Deno zgarnia 21M$"}]},{"@type":"WebSite","@id":"https:\/\/vived.io\/pl\/#website","url":"https:\/\/vived.io\/pl\/","name":"Vived","description":"platform empowering IT people and technology companies to synergic growth","publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vived.io\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/vived.io\/pl\/#organization","name":"Vived","url":"https:\/\/vived.io\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","width":136,"height":45,"caption":"Vived"},"image":{"@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/9d2a72fe7d0dfbb4092675afbab742bb","name":"Tomasz Borowicz","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/804536d2672538508d43f60ad2108e5aaea76c192653eaf95d4c3934b7d1dbb6?s=96&d=mm&r=g","caption":"Tomasz Borowicz"}}]}},"blocks_vived":[{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>1. Jak b\u0119dzie wygl\u0105da\u0107 przysz\u0142o\u015b\u0107 Reacta?<\/h2>\n","innerContent":["\n<h2>1. Jak b\u0119dzie wygl\u0105da\u0107 przysz\u0142o\u015b\u0107 Reacta?<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>React 18 by\u0142 du\u017cym wydaniem, nad kt\u00f3rym zesp\u00f3\u0142 odpowiedzialny za bibliotek\u0119 pracowa\u0142 kilka lat. Najbardziej wyczekiwan\u0105 funkcjonalno\u015bci\u0105 by\u0142o wsp\u00f3\u0142bie\u017cne renderowanie, czyli mo\u017cliwo\u015b\u0107 priorytetowania render\u00f3w oraz przerywania ich przed zako\u0144czeniem (wi\u0119cej na ten temat dowiecie si\u0119 z <a href=\"https:\/\/vived.io\/frontend-thursday-vol-81-react-18\/\">81 edycji tego przegl\u0105du<\/a>). Od momentu wydania React 18 min\u0119\u0142y ju\u017c trzy miesi\u0105ce i doczekali\u015bmy si\u0119 2 wersji minor, kt\u00f3re wprowadza\u0142y g\u0142\u00f3wnie bugfixy. Je\u015bli zastanawiali\u015bcie si\u0119 co czeka w kolejnych latach Reacta, to zesp\u00f3\u0142 rozwijaj\u0105cy go postanowi\u0142 rozwia\u0107 w\u0105tpliwo\u015bci i podzieli\u0142 si\u0119 nad inicjatywami nad kt\u00f3rymi obecnie pracuje. Co wa\u017cne, nie jest to typowa roadmapa, bo poszczeg\u00f3lne inicjatywy nie posiadaj\u0105 ram czasowych, ani deadlin\u00f3w.<\/p>\n","innerContent":["\n<p>React 18 by\u0142 du\u017cym wydaniem, nad kt\u00f3rym zesp\u00f3\u0142 odpowiedzialny za bibliotek\u0119 pracowa\u0142 kilka lat. Najbardziej wyczekiwan\u0105 funkcjonalno\u015bci\u0105 by\u0142o wsp\u00f3\u0142bie\u017cne renderowanie, czyli mo\u017cliwo\u015b\u0107 priorytetowania render\u00f3w oraz przerywania ich przed zako\u0144czeniem (wi\u0119cej na ten temat dowiecie si\u0119 z <a href=\"https:\/\/vived.io\/frontend-thursday-vol-81-react-18\/\">81 edycji tego przegl\u0105du<\/a>). Od momentu wydania React 18 min\u0119\u0142y ju\u017c trzy miesi\u0105ce i doczekali\u015bmy si\u0119 2 wersji minor, kt\u00f3re wprowadza\u0142y g\u0142\u00f3wnie bugfixy. Je\u015bli zastanawiali\u015bcie si\u0119 co czeka w kolejnych latach Reacta, to zesp\u00f3\u0142 rozwijaj\u0105cy go postanowi\u0142 rozwia\u0107 w\u0105tpliwo\u015bci i podzieli\u0142 si\u0119 nad inicjatywami nad kt\u00f3rymi obecnie pracuje. Co wa\u017cne, nie jest to typowa roadmapa, bo poszczeg\u00f3lne inicjatywy nie posiadaj\u0105 ram czasowych, ani deadlin\u00f3w.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5448,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klw9n.jpeg\" alt=\"\" class=\"wp-image-5448\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klw9n.jpeg\" alt=\"\" class=\"wp-image-5448\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>Server Side Components<\/h3>\n","innerContent":["\n<h3>Server Side Components<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Od kiedy komponenty renderowane po stronie serwera zosta\u0142y zaprezentowane \u015bwiatu przez Dana Abramova min\u0119\u0142o ju\u017c prawie p\u00f3\u0142tora roku. Je\u015bli nie kojarzycie koncepcji, to w du\u017cym skr\u00f3cie React umo\u017cliwia\u0142 b\u0119dzie wyrenderowanie pojedynczego komponentu po stronie serwera i przes\u0142anie kodu HTML do klienta. Mi podej\u015bcie takie mocno przypomina na PHP, bo mo\u017cliwe jest wykonywanie zapyta\u0144 do bazy danych bezpo\u015brednio z komponent\u00f3w. Je\u015bli jeste\u015bcie ciekawi szczeg\u00f3\u0142\u00f3w to polecam wspomnian\u0105 prezentacj\u0119 sprzed p\u00f3\u0142tora roku:<\/p>\n","innerContent":["\n<p>Od kiedy komponenty renderowane po stronie serwera zosta\u0142y zaprezentowane \u015bwiatu przez Dana Abramova min\u0119\u0142o ju\u017c prawie p\u00f3\u0142tora roku. Je\u015bli nie kojarzycie koncepcji, to w du\u017cym skr\u00f3cie React umo\u017cliwia\u0142 b\u0119dzie wyrenderowanie pojedynczego komponentu po stronie serwera i przes\u0142anie kodu HTML do klienta. Mi podej\u015bcie takie mocno przypomina na PHP, bo mo\u017cliwe jest wykonywanie zapyta\u0144 do bazy danych bezpo\u015brednio z komponent\u00f3w. Je\u015bli jeste\u015bcie ciekawi szczeg\u00f3\u0142\u00f3w to polecam wspomnian\u0105 prezentacj\u0119 sprzed p\u00f3\u0142tora roku:<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/embed","attrs":{"url":"https:\/\/www.youtube.com\/watch?v=TQQPAU21ZUw","type":"video","providerNameSlug":"youtube","responsive":true,"className":"wp-embed-aspect-16-9 wp-has-aspect-ratio"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=TQQPAU21ZUw\n<\/div><\/figure>\n","innerContent":["\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=TQQPAU21ZUw\n<\/div><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Server Side Components doczeka\u0142y si\u0119 ostatnio kilku drobnych zmian w API. Najwa\u017cniejsze jest jednak to, \u017ce wsp\u00f3\u0142bie\u017cne funkcjonalno\u015bci Reacta 18 umo\u017cliwi\u0142y wreszcie rozpocz\u0119cie prac nad ostateczn\u0105 wersj\u0105 funkcjonalno\u015bci. To oznacza, \u017ce z du\u017cym prawdopodobie\u0144stwem komponenty renderowane po stronie serwera zobaczymy w finalnej wersji jeszcze przed wydaniem React 19.<\/p>\n","innerContent":["\n<p>Server Side Components doczeka\u0142y si\u0119 ostatnio kilku drobnych zmian w API. Najwa\u017cniejsze jest jednak to, \u017ce wsp\u00f3\u0142bie\u017cne funkcjonalno\u015bci Reacta 18 umo\u017cliwi\u0142y wreszcie rozpocz\u0119cie prac nad ostateczn\u0105 wersj\u0105 funkcjonalno\u015bci. To oznacza, \u017ce z du\u017cym prawdopodobie\u0144stwem komponenty renderowane po stronie serwera zobaczymy w finalnej wersji jeszcze przed wydaniem React 19.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5449,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klwdi.jpeg\" alt=\"\" class=\"wp-image-5449\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klwdi.jpeg\" alt=\"\" class=\"wp-image-5449\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>Offscreen<\/h3>\n","innerContent":["\n<h3>Offscreen<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Offscreen to kolejna funkcjonalno\u015b\u0107, kt\u00f3ra zosta\u0142a odblokowana dzi\u0119ki wydaniu React 18. Ma ona umo\u017cliwi\u0107 renderowanie komponent\u00f3w poza ekranem, bez konieczno\u015bci montowania ich do struktury HTML. Komponenty takie nie b\u0119d\u0105 wi\u0119c wp\u0142ywa\u0107 na wydajno\u015b\u0107 naszych aplikacji, bo dzi\u0119ki wsp\u00f3\u0142bie\u017cnym renderowaniu traktowane b\u0119d\u0105 jako nisko priorytetowe.<\/p>\n","innerContent":["\n<p>Offscreen to kolejna funkcjonalno\u015b\u0107, kt\u00f3ra zosta\u0142a odblokowana dzi\u0119ki wydaniu React 18. Ma ona umo\u017cliwi\u0107 renderowanie komponent\u00f3w poza ekranem, bez konieczno\u015bci montowania ich do struktury HTML. Komponenty takie nie b\u0119d\u0105 wi\u0119c wp\u0142ywa\u0107 na wydajno\u015b\u0107 naszych aplikacji, bo dzi\u0119ki wsp\u00f3\u0142bie\u017cnym renderowaniu traktowane b\u0119d\u0105 jako nisko priorytetowe.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5451,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-5.jpeg\" alt=\"\" class=\"wp-image-5451\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-5.jpeg\" alt=\"\" class=\"wp-image-5451\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Komponenty renderowane poza ekranem b\u0119dziemy mogli wykorzysta\u0107 chocia\u017cby do \u0142adowania kolejnych stron jakie odwiedzi u\u017cytkownik w przysz\u0142o\u015bci u\u017cytkownik. Dzi\u0119ki temu wszystkie potrzebne dane b\u0119d\u0105 ju\u017c za\u0142adowane, a animacja przej\u015bcia mi\u0119dzy stronami jeszcze p\u0142ynniejsza. Innym \u015bwietnym przyk\u0142adem jest implementacja niesko\u0144czonej wirtualnej listy, kt\u00f3ra poza ekranem wyrenderuje elementy, kt\u00f3re za\u0142adowane zostan\u0105 zaraz po rozpocz\u0119ciu scrollowania.<\/p>\n","innerContent":["\n<p>Komponenty renderowane poza ekranem b\u0119dziemy mogli wykorzysta\u0107 chocia\u017cby do \u0142adowania kolejnych stron jakie odwiedzi u\u017cytkownik w przysz\u0142o\u015bci u\u017cytkownik. Dzi\u0119ki temu wszystkie potrzebne dane b\u0119d\u0105 ju\u017c za\u0142adowane, a animacja przej\u015bcia mi\u0119dzy stronami jeszcze p\u0142ynniejsza. Innym \u015bwietnym przyk\u0142adem jest implementacja niesko\u0144czonej wirtualnej listy, kt\u00f3ra poza ekranem wyrenderuje elementy, kt\u00f3re za\u0142adowane zostan\u0105 zaraz po rozpocz\u0119ciu scrollowania.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>Optymalizacja Kompilatora<\/h3>\n","innerContent":["\n<h3>Optymalizacja Kompilatora<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Pami\u0119tacie jeszcze prezentacj\u0119 z ostatniego React Conf, obiecuj\u0105c\u0105, \u017ce ju\u017c nigdy wi\u0119cej nie b\u0119dziemy musieli u\u017cywa\u0107 `useMemo` i `useCallback`? Je\u015bli nie, to ponownie pos\u0142u\u017c\u0119 jako Wasza pami\u0119\u0107 zewn\u0119trzn\u0105 i poni\u017cej znajdziecie t\u0105 w\u0142a\u015bnie prezentacj\u0119 (TLDR: Magiczna biblioteka\/kompilator doda za was useMemo i useCallback tam gdzie jest to potrzebne)<\/p>\n","innerContent":["\n<p>Pami\u0119tacie jeszcze prezentacj\u0119 z ostatniego React Conf, obiecuj\u0105c\u0105, \u017ce ju\u017c nigdy wi\u0119cej nie b\u0119dziemy musieli u\u017cywa\u0107 `useMemo` i `useCallback`? Je\u015bli nie, to ponownie pos\u0142u\u017c\u0119 jako Wasza pami\u0119\u0107 zewn\u0119trzn\u0105 i poni\u017cej znajdziecie t\u0105 w\u0142a\u015bnie prezentacj\u0119 (TLDR: Magiczna biblioteka\/kompilator doda za was useMemo i useCallback tam gdzie jest to potrzebne)<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/embed","attrs":{"url":"https:\/\/www.youtube.com\/watch?v=lGEMwh32soc","type":"video","providerNameSlug":"youtube","responsive":true,"className":"wp-embed-aspect-16-9 wp-has-aspect-ratio"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=lGEMwh32soc\n<\/div><\/figure>\n","innerContent":["\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=lGEMwh32soc\n<\/div><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Od grudnia wie\u015bci o projekcie troch\u0119 umilk\u0142y. Na szcz\u0119\u015bcie nie zosta\u0142 on zamkni\u0119ty i zesp\u00f3\u0142 Reacta nadal pracuje nad jego implementacj\u0105. Ja czekam niecierpliwie, bo im mniej powtarzalnego i wt\u00f3rnego kodu tym lepiej (tak, na Ciebie patrz\u0119 Angular).<\/p>\n","innerContent":["\n<p>Od grudnia wie\u015bci o projekcie troch\u0119 umilk\u0142y. Na szcz\u0119\u015bcie nie zosta\u0142 on zamkni\u0119ty i zesp\u00f3\u0142 Reacta nadal pracuje nad jego implementacj\u0105. Ja czekam niecierpliwie, bo im mniej powtarzalnego i wt\u00f3rnego kodu tym lepiej (tak, na Ciebie patrz\u0119 Angular).<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5453,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klws6-1.jpeg\" alt=\"\" class=\"wp-image-5453\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klws6-1.jpeg\" alt=\"\" class=\"wp-image-5453\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3><\/h3>\n","innerContent":["\n<h3><\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>To oczywi\u015bcie nie wszystko nad czym obecnie pracuje zesp\u00f3\u0142 Reacta. W podlinkowanej poni\u017cej notatce znajdziecie wzmianki chocia\u017ccby o dalszej pracy nad now\u0105 dokumentacj\u0105 czy usprawnieniami dla renderowania po stronie serwera. Musz\u0119 przyzna\u0107, \u017ce nowe funkcjonalno\u015bci zapowiadaj\u0105 si\u0119 naprawd\u0119 \u015bwietnie. Szkoda tylko, \u017ce wi\u0119kszo\u015b\u0107 z nich nie jest jeszcze osadzona w czasie. No c\u00f3\u017c, pozostaje nam tylko trzyma\u0107 kciuki, \u017ce tym razem p\u00f3jdzie szybciej ni\u017c w przypadku wsp\u00f3\u0142bie\u017cnego renderowania, nad kt\u00f3rym prace trwa\u0142y kilka lat i wielokrotnie zmienia\u0142 on swoje API.<\/p>\n","innerContent":["\n<p>To oczywi\u015bcie nie wszystko nad czym obecnie pracuje zesp\u00f3\u0142 Reacta. W podlinkowanej poni\u017cej notatce znajdziecie wzmianki chocia\u017ccby o dalszej pracy nad now\u0105 dokumentacj\u0105 czy usprawnieniami dla renderowania po stronie serwera. Musz\u0119 przyzna\u0107, \u017ce nowe funkcjonalno\u015bci zapowiadaj\u0105 si\u0119 naprawd\u0119 \u015bwietnie. Szkoda tylko, \u017ce wi\u0119kszo\u015b\u0107 z nich nie jest jeszcze osadzona w czasie. No c\u00f3\u017c, pozostaje nam tylko trzyma\u0107 kciuki, \u017ce tym razem p\u00f3jdzie szybciej ni\u017c w przypadku wsp\u00f3\u0142bie\u017cnego renderowania, nad kt\u00f3rym prace trwa\u0142y kilka lat i wielokrotnie zmienia\u0142 on swoje API.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/reactjs.org\/blog\/2022\/06\/15\/react-labs-what-we-have-been-working-on-june-2022.html\">https:\/\/reactjs.org\/blog\/2022\/06\/15\/react-labs-what-we-have-been-working-on-june-2022.html<\/a><\/p>\n","innerContent":["\n<p><a href=\"https:\/\/reactjs.org\/blog\/2022\/06\/15\/react-labs-what-we-have-been-working-on-june-2022.html\">https:\/\/reactjs.org\/blog\/2022\/06\/15\/react-labs-what-we-have-been-working-on-june-2022.html<\/a><\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>2. Deno zgarnia 21 milion\u00f3w dolar\u00f3w<\/h2>\n","innerContent":["\n<h2>2. Deno zgarnia 21 milion\u00f3w dolar\u00f3w<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Deno to \u015brodowisko uruchomieniowe JavaScript od tw\u00f3rcy Node.js, kt\u00f3ry postanowi\u0142 naprawi\u0107 b\u0142\u0119dy projektowe jakie pope\u0142ni\u0142 przy projektowaniu poprzedniego projektu. Jakie to b\u0142\u0119dy? No c\u00f3\u017c, nikt nie wyt\u0142umaczy tego lepiej ni\u017c on sam<\/p>\n","innerContent":["\n<p>Deno to \u015brodowisko uruchomieniowe JavaScript od tw\u00f3rcy Node.js, kt\u00f3ry postanowi\u0142 naprawi\u0107 b\u0142\u0119dy projektowe jakie pope\u0142ni\u0142 przy projektowaniu poprzedniego projektu. Jakie to b\u0142\u0119dy? No c\u00f3\u017c, nikt nie wyt\u0142umaczy tego lepiej ni\u017c on sam<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/embed","attrs":{"url":"https:\/\/www.youtube.com\/watch?v=M3BM9TB-8yA","type":"video","providerNameSlug":"youtube","responsive":true,"className":"wp-embed-aspect-16-9 wp-has-aspect-ratio"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=M3BM9TB-8yA\n<\/div><\/figure>\n","innerContent":["\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/www.youtube.com\/watch?v=M3BM9TB-8yA\n<\/div><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Rok temu Deno przekszta\u0142ci\u0142o si\u0119 z projektu otwarto \u017ar\u00f3d\u0142owego w pe\u0142noprawny startup z finansowaniem opiewaj\u0105cym na 5 milion\u00f3w dolar\u00f3w. Firma obiecywa\u0142a skupi\u0107 si\u0119 na rozwoju swojej w\u0142asnej chmury mocno inspirowanej CloudFlare. Po roku dzia\u0142ania firmy Deno Deploy nadal jest w becie, ale firmie uda\u0142o si\u0119 ju\u017c znale\u017a\u0107 kilku ciekawych klient\u00f3w. Zar\u00f3wno Supabase (otwarto\u017ar\u00f3d\u0142owa alternatywa Firebase) jak i Netlify postanowi\u0142y oprze\u0107 swoje Edge Functions w\u0142a\u015bnie o chmur\u0119 Deno.<\/p>\n","innerContent":["\n<p>Rok temu Deno przekszta\u0142ci\u0142o si\u0119 z projektu otwarto \u017ar\u00f3d\u0142owego w pe\u0142noprawny startup z finansowaniem opiewaj\u0105cym na 5 milion\u00f3w dolar\u00f3w. Firma obiecywa\u0142a skupi\u0107 si\u0119 na rozwoju swojej w\u0142asnej chmury mocno inspirowanej CloudFlare. Po roku dzia\u0142ania firmy Deno Deploy nadal jest w becie, ale firmie uda\u0142o si\u0119 ju\u017c znale\u017a\u0107 kilku ciekawych klient\u00f3w. Zar\u00f3wno Supabase (otwarto\u017ar\u00f3d\u0142owa alternatywa Firebase) jak i Netlify postanowi\u0142y oprze\u0107 swoje Edge Functions w\u0142a\u015bnie o chmur\u0119 Deno.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5454,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klxzf.jpeg\" alt=\"\" class=\"wp-image-5454\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klxzf.jpeg\" alt=\"\" class=\"wp-image-5454\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>W minionym tygodniu Deno Company poinformowa\u0142o, \u017ce fundusz inwestycyjny Sequoia Capital postanowi\u0142 zainwestowa\u0107 w firm\u0119 21 milion\u00f3w dolar\u00f3w. Z notatki informuj\u0105cej o kolojnej rundzie finansowanie dowiadujemy si\u0119, \u017ce firma nie zmienia swoich priorytet\u00f3w i kontynuowa\u0107 b\u0119dzie prac\u0119 nad swoj\u0105 chmur\u0105. Kolejny zastrzyk got\u00f3wki na pewno Deno nie zaszkodzi, a troch\u0119 konkurencji na rynku \u015brodowisk uruchomieniowych dzia\u0142a tylko na korzy\u015b\u0107 programist\u00f3w.<\/p>\n","innerContent":["\n<p>W minionym tygodniu Deno Company poinformowa\u0142o, \u017ce fundusz inwestycyjny Sequoia Capital postanowi\u0142 zainwestowa\u0107 w firm\u0119 21 milion\u00f3w dolar\u00f3w. Z notatki informuj\u0105cej o kolojnej rundzie finansowanie dowiadujemy si\u0119, \u017ce firma nie zmienia swoich priorytet\u00f3w i kontynuowa\u0107 b\u0119dzie prac\u0119 nad swoj\u0105 chmur\u0105. Kolejny zastrzyk got\u00f3wki na pewno Deno nie zaszkodzi, a troch\u0119 konkurencji na rynku \u015brodowisk uruchomieniowych dzia\u0142a tylko na korzy\u015b\u0107 programist\u00f3w.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5455,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klx9c.jpeg\" alt=\"\" class=\"wp-image-5455\"\/><figcaption>Co interesuj\u0105ce, w\u015br\u00f3d inwestor\u00f3w znale\u017a\u0107 mo\u017cna r\u00f3wnie\u017c Netlify. Mo\u017ce sugerowa\u0107 to, \u017ce w najbli\u017cszych miesi\u0105cach wsp\u00f3\u0142praca mi\u0119dzy obiema firmami jeszcze bardziej si\u0119 zacie\u015bni.\u00a0<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/6klx9c.jpeg\" alt=\"\" class=\"wp-image-5455\"\/><figcaption>Co interesuj\u0105ce, w\u015br\u00f3d inwestor\u00f3w znale\u017a\u0107 mo\u017cna r\u00f3wnie\u017c Netlify. Mo\u017ce sugerowa\u0107 to, \u017ce w najbli\u017cszych miesi\u0105cach wsp\u00f3\u0142praca mi\u0119dzy obiema firmami jeszcze bardziej si\u0119 zacie\u015bni.\u00a0<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/deno.com\/blog\/series-a\">https:\/\/deno.com\/blog\/series-a<\/a><br><a href=\"https:\/\/deno.com\/blog\/the-deno-company\">https:\/\/deno.com\/blog\/the-deno-company<\/a><br><a href=\"https:\/\/deno.com\/blog\/netlify-edge-functions-on-deno-deploy\">https:\/\/deno.com\/blog\/netlify-edge-functions-on-deno-deploy<\/a><br><a href=\"https:\/\/deno.com\/blog\/supabase-functions-on-deno-deploy\">https:\/\/deno.com\/blog\/supabase-functions-on-deno-deploy<\/a><\/p>\n","innerContent":["\n<p><a href=\"https:\/\/deno.com\/blog\/series-a\">https:\/\/deno.com\/blog\/series-a<\/a><br><a href=\"https:\/\/deno.com\/blog\/the-deno-company\">https:\/\/deno.com\/blog\/the-deno-company<\/a><br><a href=\"https:\/\/deno.com\/blog\/netlify-edge-functions-on-deno-deploy\">https:\/\/deno.com\/blog\/netlify-edge-functions-on-deno-deploy<\/a><br><a href=\"https:\/\/deno.com\/blog\/supabase-functions-on-deno-deploy\">https:\/\/deno.com\/blog\/supabase-functions-on-deno-deploy<\/a><\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>3. Node 16 po\u017cyje siedem miesi\u0119cy kr\u00f3cej<\/h2>\n","innerContent":["\n<h2>3. Node 16 po\u017cyje siedem miesi\u0119cy kr\u00f3cej<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Node posiada bardzo jasn\u0105 polityk\u0119 wspierania kolejnych wersji. Je\u015bli wersja posiada numer nieparzysty, to wspierana jest przez 6 miesi\u0119cy, je\u015bli parzysty to jest to wersja LTS i \u0142atki bezpiecze\u0144stwa otrzymywa\u0107 b\u0119dzie przez 30 miesi\u0119cy. Innymi s\u0142owy wersje LTS ukazuj\u0105 si\u0119 co 2 lata i przeplatane s\u0105 wersjami z kr\u00f3tszym wsparciem.&nbsp;<\/p>\n","innerContent":["\n<p>Node posiada bardzo jasn\u0105 polityk\u0119 wspierania kolejnych wersji. Je\u015bli wersja posiada numer nieparzysty, to wspierana jest przez 6 miesi\u0119cy, je\u015bli parzysty to jest to wersja LTS i \u0142atki bezpiecze\u0144stwa otrzymywa\u0107 b\u0119dzie przez 30 miesi\u0119cy. Innymi s\u0142owy wersje LTS ukazuj\u0105 si\u0119 co 2 lata i przeplatane s\u0105 wersjami z kr\u00f3tszym wsparciem.&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>W minionym tygodniu na blogu Node pojawi\u0142a si\u0119 notatka informuj\u0105ca o skr\u00f3ceniu wsparcia dla Node 16 (a wi\u0119c wersji LTS) o ca\u0142e 7 miesi\u0119cy. Oznacza to, \u017ce Node 16 dokona swojego \u017cywota w pa\u017adzierniku 2023. Do ko\u0144ca wsparcia zosta\u0142o jeszcze troch\u0119 czasu, ale je\u015bli utrzymujecie jaki\u015b serwis na tej wersji to jak najszybciej przygotujcie sobie taska na migracj\u0119.<\/p>\n","innerContent":["\n<p>W minionym tygodniu na blogu Node pojawi\u0142a si\u0119 notatka informuj\u0105ca o skr\u00f3ceniu wsparcia dla Node 16 (a wi\u0119c wersji LTS) o ca\u0142e 7 miesi\u0119cy. Oznacza to, \u017ce Node 16 dokona swojego \u017cywota w pa\u017adzierniku 2023. Do ko\u0144ca wsparcia zosta\u0142o jeszcze troch\u0119 czasu, ale je\u015bli utrzymujecie jaki\u015b serwis na tej wersji to jak najszybciej przygotujcie sobie taska na migracj\u0119.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Sk\u0105d wynika decyzja o skr\u00f3conym wsparciu dla jednej z wersji LTS? Jest to zwi\u0105zane z ko\u0144cem wsparcia dla protoko\u0142u Open SSL 1.1.1 z kt\u00f3rego korzysta Node 16. Jak donosz\u0105 tw\u00f3rcy, rozwa\u017cana by\u0142a r\u00f3wnie\u017c alternatywa w postaci migracji do OpenSSL 3 lub skorzystanie z OpenSSL 1.1.1 od CentOS, ale obie opcje zosta\u0142y odrzucone ze wzgl\u0119du na problemy z kompatybilno\u015bci\u0105.<\/p>\n","innerContent":["\n<p>Sk\u0105d wynika decyzja o skr\u00f3conym wsparciu dla jednej z wersji LTS? Jest to zwi\u0105zane z ko\u0144cem wsparcia dla protoko\u0142u Open SSL 1.1.1 z kt\u00f3rego korzysta Node 16. Jak donosz\u0105 tw\u00f3rcy, rozwa\u017cana by\u0142a r\u00f3wnie\u017c alternatywa w postaci migracji do OpenSSL 3 lub skorzystanie z OpenSSL 1.1.1 od CentOS, ale obie opcje zosta\u0142y odrzucone ze wzgl\u0119du na problemy z kompatybilno\u015bci\u0105.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center","id":5457,"sizeSlug":"full","linkDestination":"none"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-1-2.jpeg\" alt=\"\" class=\"wp-image-5457\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/download-1-2.jpeg\" alt=\"\" class=\"wp-image-5457\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a:<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/nodejs.org\/en\/blog\/announcements\/nodejs16-eol\/\">https:\/\/nodejs.org\/en\/blog\/announcements\/nodejs16-eol\/<\/a><br><a href=\"https:\/\/nodejs.org\/en\/about\/releases\/\">https:\/\/nodejs.org\/en\/about\/releases\/<\/a><\/p>\n","innerContent":["\n<p><a href=\"https:\/\/nodejs.org\/en\/blog\/announcements\/nodejs16-eol\/\">https:\/\/nodejs.org\/en\/blog\/announcements\/nodejs16-eol\/<\/a><br><a href=\"https:\/\/nodejs.org\/en\/about\/releases\/\">https:\/\/nodejs.org\/en\/about\/releases\/<\/a><\/p>\n"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/9953","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/comments?post=9953"}],"version-history":[{"count":1,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/9953\/revisions"}],"predecessor-version":[{"id":10479,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/9953\/revisions\/10479"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media\/8749"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=9953"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=9953"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=9953"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}