Slik blir du en bedre React-utvikler i 2020
Ut med Redux, inn med Context - her er React-guru Kristofer Giltvedt Selbekk sine beste tips fra kode24-timen-intervjuet. đ§
Sbanken, Sopra Steria, Bekk og Bouvet - i vÄr serie KodeÄret sa alle at React kommer til Ä dominere ogsÄ i 2020.
Men React er ikke en teknologi man lÊrer seg én gang og kan bruke evig. Det kommer nyheter hele tida, ogsÄ i verdenen av verktÞy rundt rammeverket.
kode24 inviterte derfor React-guru, Bekk-konsulent, Entur-utvikler og ForrigeUke-skribent Kristofer Giltvedt Selbekk til vÄr podcast kode24-timen, for Ä snakke litt om hvordan man skal forholde seg til React i 2020!
Hele intervjuet hÞrer du ved Ä abonnere pÄ kode24-timen i podcast-appen din, eller lytte i spilleren under. Og under der igjen fÄr du de aller viktigste punktene.
#1: Bruk Create React App
FĂžrste steg for Ă„ lage en React-app er Ă„... lage en React-app, for eksempel med verktĂžyet Create React App, som setter opp prosjektet ditt med Webpack og Babel og alt du trenger. Men burde man heller sette opp React-prosjektene sine helt selv?
- Create React App har vÊrt veldig, veldig viktig for utbredelsen av React, og ikke fullt sÄ viktig for mange stÞrre prosjekter, forteller Selbekk i kode24-timen.
Vi bruker det masse i Entur, og jeg anbefaler alle Ä prÞve sÄ langt man kommer.
- Ulempen er mindre kontroll, sÄ kanskje man velger Ä trykke pÄ eject-knappen for Ä styre sitt eget opplegg.
- Men hva er det man egentlig endrer da?
- Jeg tror knapt jeg har gjort det, annet enn for Ă„ prĂžve. Men det kan for eksempel vĂŠre om man trenger Ă„ stĂžtte Less, svarer Selbekk.
- SÄ proffe kan ogsÄ bruke Create React App i produksjon?
- Ja, vi bruker det masse i Entur, og jeg anbefaler alle Ä prÞve sÄ langt man kommer. FÄr man behov utover det Create React App gir, kan man revurdere behovene. Kanskje det bare er forfengelighet? Eventuelt: Hopp ut av Create React App. Man taper ingenting pÄ Ä begynne med Create React App, i alle fall.
#2: Ikke bruk Redux
Det har lenge vĂŠrt vanlig Ă„ bruke state-lĂžsningen Redux sammen med React. Men mange, inkludert Selbekk, mener det ikke er nĂždvendig lenger.
- I gamle dager ville man typisk ha state pÄ toppen, og sende det ned til der du brukte det. Da kunne man enten sende det ned hele veien, som tar lang tid og er klÞnete, eller man kunne bruke Redux, som pÄ magisk vis fikk den ned hele treet, forklarer Selbekk i kode24-timen.
Men for dette har Reacts egen context tatt over, mener Selbekk, som gir deg en snarvei for Ă„ sende state nedover i komponentene dine.
- SÄ Redux er pÄ vei ut av mange prosjekter, og i alle fall ikke pÄ vei inn i sÄ mange nye prosjekter. Vi bruker det masse pÄ Entur, og ofte pÄ mye kortere avstander, for eksempel bare for Ä sende en verdi til en gruppe radioknapper.
#3: LĂŠr deg Hooks
Du har sikkert hĂžrt om hooks i React. De gir blant annet muligheter til funksjonskomponenter som tidligere bare var tilgjengelige i klassekomponenter, og Selbekk er solgt for lengst.
- Hooks gjÞr ting lettere Ä lÊre seg. I gamledager hadde man klasser i et sprÄk som egentlig ikke hadde klasser, og vi mÄtte forholde oss til this, huske Ä binde this pÄ riktige steder, og jeg slet mye med det, sier Selbekk i kode24-timen.
- SÄ kom hooks, som lar deg bruke alle de fine funksjonene i React, som state-hÄndtering og sideeffekter, med egne funksjoner inne i funksjonskomponenter. Det blir mindre Ä skrive, og er bare fryd og gammen, mener han.
- Jeg har ikke skrevet en klassekomponent pÄ et Är, tror jeg. Det er det mange grunner til, jeg gifta meg og fikk barn blant annet, men hooks hjalp til!
#4: Bruk Suspense
I tillegg til et bedre context-API, er suspense enda en grunn til at Redux kan ha utspilt sin rolle. For brukte du Redux til Ă„ cache data fra serveren tidligere, kan heller suspence lĂžse mye av problemet for deg.
- NÄr appen din rendrer fÞr dataen din er klar, kastes en exception, for Ä for eksempel vise en spinner, forklarer Selbekk i kode24-timen.
AltsÄ i stedet for Ä ha "isLoading"-variabler i state-en din for Ä hÄndtere den slags.
- Det er forelÞpig bare ute i Reacts eksperimentelle versjon, men de bruker det pÄ nye facebook.com. Jeg snakka med noen pÄ ReactConf som lager den, og de tester den pÄ én prosent av brukerne, som er mange millioner, og de bruker den altsÄ i produksjon.
#5: Ikke bry deg for mye
Selv om ikke denne lista ser veldig lang ut, er det flere nyheter her som krever at man endrer tankemÄten sin litt, og bygger React-apper pÄ en litt annen mÄte enn fÞr. Med andre ord: Det krever litt Ä bruke det nyeste.
- Men mÄ man alltid bruke det nyeste om man skal vÊre en god React-utvikler?
- Nei, jeg synes ikke det. Man mÄ ikke det. Men jeg liker Ä gjÞre det, fordi jeg er super-React-nerd og fÄr mye personlig glede av det, og som faggruppeleder i for React i Bekk mÄ jeg kunne svare pÄ spÞrsmÄl rundt det, sier Selbekk i kode24-timen.
- Men funker det, sÄ funker det. Vi utviklere har en tendens til Ä grave oss ned i smÄ detaljer, men burde heller tenke "Funker det greit nok? KjÞr pÄ."
Vi snakka med Selbekk om mye mer enn dette, altsĂ„, og hĂ„per du har lyst til Ă„ abonnere pĂ„ kode24-timen for Ă„ hĂžre hele intervjuet! Har du forslag til hvem vi kan invitere neste gang? Send oss en epost, da vel! đ
Foretrekk oss i Google Discover
Ved Ä legge oss til som foretrukket kilde i Google vil du blant annet fÄ opp flere av sakene vÄre i Google Discover. Tusen takk for stÞtten!