1.05 (5) NextJS i co dalej?
1.05 NextJS i co dalej? W piątym odcinku naszego podcastu podjęliśmy temat NextJS i przyszłości technologii frontendowych. Jak rozwija się React? Dlaczego współpraca pomiędzy twórcami NextJS i Reacta układa się tak dobrze? Co Vercel robi dobrze? Co dalej w świecie Frontendu? Rozmawiają: Wojciech Skorupa [linkedin] Mateusz Jabłoński [www] [linkedin]
Mianowicie dzisiaj chcieliśmy porozmawiać o NextJS jako framework, który wprowadza sporo zamieszania na rynku usług IT. Myślę, że to zamieszanie jest bardzo dobre. I dzięki temu tak naprawdę wprowadza troszeczkę może świeżości, troszeczkę dynamiczności do tego, jak ten rynek się ostatnimi laty rozwijał. Cześć Wojtku. Cześć Mateuszu. Powiedziałem na samym początku, chciałbym żebyśmy dzisiaj porozmawiali o Nextie. Jak ten temat ci leży? Jest to zdecydowanie ciekawy temat i też jak najbardziej chciałbym z tobą porozmawiać Mateuszu i poznać swoją opinię na temat samego Nexta, ale w ogóle podejście tej drogi, no tak, tej drogi Którą zmierzamy jako deweloperzy React'owi, bo przecież sam React w swojej dokumentacji w tym nowym wydaniu już poleca Nexta razem z tymi nowymi frameworkami SSR jako podstawę wszystkich nowych projektów.
To prawda, polecają. Warto też spojrzeć na to, jak to się zmieniło na przestrzeni ostatnich lat, bo jeżeli sobie cofniemy się troszeczkę w czasie, zobaczymy, że React jak zaczynał, to tak naprawdę on zaczął bardzo mocno polecał Swój własny framework do budowania aplikacji oparty o React. Mam na myśli Create React App, o ile można to nazwać mini frameworkiem, jakimś narzędziem, który tak naprawdę pomagał w budowaniu tych aplikacji, ale jak wiemy Create React App już nie jest, jakby to ładnie powiedzieć, nie jest na topie. Teraz można powiedzieć, że już tak naprawdę powoli nam Odchodzi niepamięć.
I nawet sam React, który w zasadzie jest twórcą Creative Act Apa, doprowadził do tego, że poleca narzędzia zewnętrzne. Nexta. Dlaczego poleca tego Nexta? Co w nim jest takiego ciekawego, że ten Next rzeczywiście jest fajniejszy niż ten Create React App, czy chociażby inne narzędzia, które są do tej pory tutaj dostępne na rynku i które służą dokładnie do tych samych rzeczy? To znaczy myślę, że Next, jak i pozostałe tego typu frameworki, symbolizują niejako moim zdaniem Kierunek, w którym cały team Reactowy chce się poruszać w nadchodzącej przyszłości, czyli odejście od wykonywania całego kodu u klienta w przeglądarce, niezależnie czy to jest przeglądarka desktopowa czy przeglądarka mobilna,
I w ogóle umiejscowienia tego frameworku typu NextJS, ale i tych pozostałych, o których wspominaliśmy, właśnie w tych takich standardowych granicach, czy też w takich standardowych ramach, które umieszczamy siebie i frameworki, bo mi ciężko jest go umiejscowić w jednym albo w drugim miejscu, bo zdecydowanie nie jest to framework frontendowy, ale też nie jest to framework backendowy. I chciałbym poznać twoje zdanie właśnie, co myślisz o tym, o pierwszym ustawianiu się takim backend deweloperem na frontendzie i po drugie właśnie, co myślisz o w ogóle tego typu frameworkach takich backendowo-frontendowych powiedzmy. W ogóle zacząłbym od tego, żeby spróbować zdefiniować swoją pozycję na rynku.
Zdarzyło, ale nie w aplikacjach front-endowych. Okej, to tak, to o to mi chodzi. No właśnie, a teraz dochodzimy do takiego momentu, gdzie właśnie razem z tym nowym update'em Nexta, czyli Nexta 13.4, dochodzimy do takiego momentu, gdzie w naszych komponentach front-endowych możemy napisać back-endowe query. Możemy. No i to jest właśnie ten mix, o którym wspominasz. Bo Next, zgodziłbym się w 100% z Tobą, że Next nie będzie frameworkiem, który jest czysto frontendowy i nigdy nie był. Nawet nie chodzi o tę wersję 13.4, tylko poprzednie wersje już pokazywały to, że ten framework daje spore możliwości obsługiwania chociażby requestów,
Tylko wiesz, jak coś jest do wszystkiego, to jest do niczego. I OK, zgodziłbym się, że jeżeli nie potrzebujemy ludzi, bo w zasadzie jeden deweloper może wszystko ogarnąć. I w porządku. Ale z drugiej strony, po to mamy tak dużo różnych technologii, które są odpowiedzialne za różne rzeczy, ponieważ są zoptymalizowane pod konkretne zadania. Tutaj mówimy tylko i wyłącznie o Javascriptie, jednym języku. Mówimy tylko o jednym frameworku, Nextie, który jeszcze jest dość mocno uzależniony od firmy, która go tworzy, czyli Vercel. Co prawda, już abstrahując, bo możemy sobie tego Nexta naszego postawić gdziekolwiek chcemy, ale Vercel też tutaj gra dość dużą, odgrywa dość dużą rolę i daje dość dużo narzędzi po to, żeby do tego Nexta jeszcze bardziej przekonać.
Myślę, że tak jak wspominałem, nie jest to rozwiązanie każdego problemu i ten Next nie będzie dobry dla każdej aplikacji reactowej. Chociaż śmiem twierdzić, że będzie optymalny dla 80% aplikacji, które są tworzone aktualnie w Reaccie. Też w ogóle bardzo ciekawe jest to, jak blisko współpracują ze sobą właśnie Team Nexta razem z teamem reactowym, core'owym. I jak te dwa frameworki na siebie wpływają i jak siebie uzupełniają. Więc myślę, że przyszłość w tym kontekście jest dość ciekawa. To jest chyba też inny case, że chyba już świat w ogóle developmentu, programowania uświadomił sobie, że nie da się osiągnąć wielkich rzeczy, zrobić wielkich rzeczy w pojedynkę.
Ale wracając już do naszych tematów programistycznych, zgadzam się z tobą, chociaż myślę, że to był w ogóle duży plus Reacta od samego początku, że ten core'owy team Reacta od tej wersji szesnastej, tak na dobrą sprawę, on był dość mały, ale dość się twardy na to, co się dzieje w community. Chociaż to było też fajnie, bardzo moim zdaniem moderowane. Dzięki temu też ten framework się tak nie rozrósł i myślę, że to jest ogromny plus właśnie w porównaniu do takiego Angulara, gdzie masz tysiąc narzędzi zapewnionych przez sam framework. A w Reactie bardzo dużo rzeczy możesz wybrać samemu. Od routingu, które mamy dwie duże biblioteki, tak? Po narzędzie do defleczowania danych, więc właśnie to Community bardzo mocno wzbogaca ten framework i widzimy to tutaj znowu ponownie na przykładzie Nexta.
No bo mówimy o reakcji jako o frameworku, a wydaje mi się, że powinniśmy w tym rozumieniu bardziej inaczej. Mówimy o reakcji i traktujemy go jako, powiedzmy, framework czy bibliotekę, już powiedzmy, jak zwał, bo dyskusji na ten temat jest bardzo dużo. Porównując Lyacta do Angulara, nie wiem czy to jest najlepsze porównanie. Może lepiej porównać właśnie Nexta do Angulara. Tak jak powiedziałeś, Angular zapewnia cały zestaw narzędzi, które czynią z niego spójne narzędzie, spójny framework, który po prostu razem ma działać.
Tak samo jest z Nextem. Next też dostarcza cały zestaw bibliotek. Od fontów, poprzez obrazki i routing, skończywszy na chociażby takich paczkach do dynamicznego ładowania komponentów. Więc mi się wydaje, że Nextowi bliżej do Do Frameworka, czy też do konkurencji dla Angulara, niż Reactowi, który sam w sobie, pomimo tego, że jest to po prostu biblioteka, która ma jakiś tam model kompozycyjny zapewnić, która dostarcza kilka fajnych API typu właśnie konteksty, to poza tym tak naprawdę w Reactie nic nie ma. Może to był też powód, dla którego zespół core'owy Reacta postanowił właśnie znaleźć kogoś, kto im pomoże, bo trochę może utknęli.
I po przetestowaniach zupełnie oddzielnie gdzieś właśnie na boku, czy jeśli chodzi o jakiś routing, data fetching i tak dalej i tak dalej, możesz bardzo szybko, ta biblioteka może ewoluować, w związku z tym, że jest mała i właśnie oddzielnie są te wszystkie zależności jakieś dodatkowe. I bardzo możesz go też dostosowywać w momencie, kiedy już dochodzi do takiego momentu, że chcesz jakoś mocno zmienić framework, tak jak w przypadku Reacta i React Server Components, gdzie jest to ogromna zmiana jakby właśnie w samym podejściu do myślenia o tej bibliotece. Właśnie dlatego, że Jest całe to community, które tworzy te wszystkie narzędzia, testuje, sprawdza co najlepiej działa, a ty jako autor biblioteki możesz korzystać z tej całej pracy, która została zrobiona dookoła tego.
Mówimy o Nextie, tutaj musimy wspomnieć o Vercelu i o narzędziu jaki Vercel dostarcza, czyli tak naprawdę tej części takiej Może trochę Continuous Integration, Continuous Deployment razem z takim serwerem hostingowym, miejscem na hosting projektów, fajnie zoptymalizowanym pod projekty Nextowe, gdzie tak naprawdę mamy całą analitykę, cały performance. Mamy możliwość przejrzenia logów, tego co się dzieje, mamy możliwość poukładania sobie środowisk, stworzenia kilku środowisk, więc ta platforma od Vercela, kiedy połączymy ją z naszym Nextem, to już takie bardzo potężne narzędzie nam powstaje, które jest w zasadzie szyte na miarę dla naszego frameworka, dla naszej aplikacji.
Można z tym zrobić wszystko i większość projektów, większość wymagań projektowych te narzędzia pokryją. Sam używam prywatnie. I uważam to za coś naprawdę fajnego. Coś co naprawdę daje frajdę z pracy. Możliwość tworzenia różnego rodzaju integracji chociażby ze Slackiem, z mailem. To jest po prostu coś, co mega usprawnia cały proces. Jest to w ogóle ciekawy model na prowadzenie firmy, co? Taki ciekawy bardzo pomysł na startup niejako i teraz już na ogromną firmę, czyli na zapewnianie takich narzędzi dookoła jakiegoś frameworku. To takie dość niestandardowe podejście, co prawda teraz bardzo popularne, szczególnie w środowisku baz danych.
Wyglądało, tylko że mówię od strony backendowej. No tak. Od strony backendowej, frontend tam przychodził, o tutaj sobie coś tam dopiszę. Jakieś jQuery dodam. Dokładnie, dodam jQuery i będę programistą. Będę programistą i będę tam tworzył. To było we wszystkich frameworkach. To backend narzucał to, jak backend będzie generowany. Chociażby Magento 1. Zobacz, backend podjął decyzję, że struktury będą definiowane za pomocą XML-a i lub, bo można było tak lub tak, PHTML-ek. To był wymysł backendu, bo chciał dostarczać jakieś dane, jakieś kontrolki, które można było wstrzyknąć do komponentu.
Nie no, zdecydowanie to wszystko na siebie wpływa. To nie jest tak, że możemy sobie teraz stwierdzić, dobra, JavaScript wygraliśmy, to jest nasz finalny język i mam każdy problem rozwiązan, zdecydowanie nie. Chociaż zdecydowanie podoba mi się to, jak w ostatnim czasie ten JavaScript i te wszystkie frameworki, które są z nim związane, tak jak NextJS się rozwijają. Dobrze Wojtku, więc myślę, że Możemy tym pięknym Twoim ostatnim zdaniem zakończyć nasz dzisiejszy odcinek. Wyszło, wydaje mi się, fajne podsumowanie tego, czym jest Next i dlaczego jest tak popularny, bo dużo na ten temat rzeczywiście padło. Osobiście zachęcamy chyba, wydaje mi się, do poznawania tego i śledzenia tego, jak ten frontend będzie się dalej zmieniał, bo według nas jest to naprawdę ciekawy kierunek.
Pokazano wszystkie 15 dopasowań. Transkrypcja generowana automatycznie i niesprawdzana ręcznie — może zawierać błędy.
Podróżnicy rozmawiają o temacie NextJS i jego wprowadzenie na rynku usług IT.
Analiza zmian w React i jego podejścia do frameworków SSR.
Diskussja o hybrydowych aplikacjach i roli NextJS w tym trendzie.
Porównanie roli frontendowego i backendowego deweloperów w frameworkie NextJS.
Analiza potencjalnych problemów i przyszłości frameworku NextJS.
Porównanie Reacta i Nexta oraz ich rozwój w społecznościach programistycznych.
Omówienie narzędzia Vercel i jego role w rozwoju frameworku NextJS.
Analiza trendu baz danych jako usług i jego wpływ na rozwój NextJS.
Przykłady i dyskusja na temat potencjalnej przyszłości integracji frontendu i backendu w jednym frameworkie.
Rozdziały i streszczenia generowane automatycznie. Pełna transkrypcja nie jest publikowana — wyszukaj frazę, aby zobaczyć dopasowane fragmenty.
Kliknij, aby znaleźć fragmenty, w których pada.
1.05 NextJS i co dalej?
W piątym odcinku naszego podcastu podjęliśmy temat NextJS i przyszłości technologii frontendowych. Jak rozwija się React? Dlaczego współpraca pomiędzy twórcami NextJS i Reacta układa się tak dobrze? Co Vercel robi dobrze? Co dalej w świecie Frontendu?
Rozmawiają:
Wojciech Skorupa [linkedin] Mateusz Jabłoński [www] [linkedin]