Next w wersji 13 zdaje się odmieniać framework kompletnie – czy jest wart zainteresowania?
Zdaniem mojego dzisiejszego rozmówcy tak – więc zapraszam Cię na krótką wymianę zdań z Michałem Miszczyszynem, znanym szerzej z bloga Type of Web.
Michał to twórca Type of Web, autor książki “Typescript na poważnie” i twórca kursów programistycznych.
Razem z Jakubem Neandrem z zaiste.net stworzyli świetnie zapowiadający się kurs Next 13 którego sam będę kursantem.
Kurs nazywa się Next13Masters i wystartuje na początku września:
Zapraszam do czytania 🙂
- Radek: Która ze zmian w Next 13 jest wg Ciebie najbardziej znacząca?
Michał: Next.js 13 to tak naprawdę zupełnie nowy framework, który z poprzednimi wersjami wspólną ma nazwę i doskonały Developer Experience. Trudno więc powiedizeć, która zmiana jest najbardziej znacząca, skoro „przeorane” zostało niemal wszystko.
- Skoro Next ma zachować wsparcie dla pages, czy uważasz że warto aktualizować kod starszych projektów do najnowszych funkcji?
Warto zrobić update do najnowszej wersji Next.js, aby skorzystać ze zmian i bugfixów w pages. Dodatkowo ułatwi to późniejszą zmianę na app. Ponieważ pages i app można używać równolegle, to nie ma potrzeby wielkiej migracji – można to robić stopniowo, albo dodawać nowe funkcje w app, a stare zostawić w pages.
- Jakich argumentów użyłbyś, by przekonać management do aktualizacji projektu do Next 13?
Do Next.js 13 każdy może zaktualizować już dzisiaj – dla pages niewiele się zmienia. Kontrowersje może budzić migracja do app. Na razie szlaki są dopiero przecierane, a po drodze było sporo problemów. Teraz jednak app jest już uznawane za stabilne i gotowe do produkcyjnego użycia. To nowy standard, który w przyszłości będzie rozwijany i nim skupia się cała energia zespołu odpowiedzialnego za rozwój Next.js. Wsparcie dla pages zostanie w końcu porzucone, więc warto zacząć się zapoznawać z app już teraz.
- Która z nowości w Next 13 jest Twoją ulubioną?
Server Actions! Dają możliwość wykonywania kodu na serwerze i ukrywają przed nami kompleksowość ich implementacji. Działają niczym magia, a jednocześnie są bardzo proste w użyciu. Nie musimy już wykonywać tego całego tańca z wystawianiem API route, wywoływaniem fetch, czekaniem na odpowiedź – a to wszystko po stronie klienta, z wieloma problemami i niepotrzebnym obciążaniem klienta. Teraz wystarczy, że zadeklarujemy funkcję z “use server”, a Next zadba o resztę. Najlepsze na koniec: Server Actions korzystają z filozofii Progressive Enhancement i działają również, gdy JavaScript się nie załaduje lub jest wyłączony w przeglądarce – zamieniają się wtedy w wysyłkę zwykłego formularza. To jest to, co lubię w Next.js – prostota i elegancja.
- Jaką jedną rzecz usunąłbyś z Next 13, z jaką nowością najmniej Ci po drodze?
Parallel Routes i Intercepting Routes. Wyglądają na niedopracowane, a sami twórcy chyba nie do końca mieli pomysł, jak można te dwie rzeczy zastosować w praktyce.
- Jaką funkcję dodałbyś do Next?
Żadną 🙂 Aktualna wersja ma wszystko, co tylko mogłem wymyślić, a byłoby jakkolwiek przydatne przy budowaniu aplikacji internetowych! Jestem pod wrażeniem, jak bardzo twórcy Next.js potrafią myśleć o potrzebach programistów i programistek, i jak bardzo potrafią ułatwić nam życie.
Nie wiem jak Wy ale ja czekam z niecierpliwością na to co Panowie przygotują w kursie 🙂