Vi hører det hele tiden her i kode24: Blazor er på vei til å bli det nye kule i kodeverdenen.
Da vi spurte kode24-klubben tidligere i høst hva de planla å fordype seg i, var Blazor nummer to på lista. Da vi tidligere i år spurte kodere hvilket frontend-rammeverk de foretrakk svarte en "Blazor, uten tvil. Gleder meg enormt til å utvikle for web med så lite JavaScript som mulig."
Til og med i jobbannonsene på kode24 har institusjoner som Lånekassen søkt etter folk som ønsker å jobbe med Blazor.
Men hva er egentlig Blazor?
Vi er ikke sikre. Så vi spurte fagansvarlig for JavaScript i Epinova og Blazor-entusiast, 32 år gamle Alexander Nilson, om han kunne forklare oss: Hva er greia med Blazor?
Dette skal norske utviklere lære seg i høst
Hva er egentlig Blazor, Alexander? 🤔
Blazor er delvis Microsofts svar på fullstack-utvikling, som gjør det mulig å utvikle med samme språk i både backend og frontend.
På samme måte som for eksempel Node og React har gjort det mulig å skrive JavaScript i både backend og frontend, kan man med .NET Core og Blazor bare bruke C#.
Blazor er også et alternativ for å utvikle interaktive frontend-komponenter. Det vil si, et alternativ til Vue, React og Angular, som er de største rammeverkene akkurat nå.
«Blazor kommer nok til å være et hett alternativ.»
Kult, men hva kan man bygge med det? Er det noe det egner seg spesielt godt til? 🍀
Det er hovedsakelig tenkt som et verktøy for å utvikle websider, men det eksperimenteres også med å ta i bruk Blazor for app-utvikling.
Blazor kommer nok til å være et hett alternativ til løsninger som i dag utvikles med .NET, der man som sagt kan skrive C# kode både for backend og frontend.
Terskelen for en “tradisjonell” C#-backendutvikler å utvikle frontend-kode blir mindre enn noensinne tidligere!
Enkelt forklart: Hva er egentlig WebAssembly?
Vi hører mye om at Blazor bruker WebAssembly. Hva betyr egentlig det? 🌊
WebAssembly gjør det mulig å kjøre C#-kode direkte i nettleseren, som har betydelig bedre ytelse enn tradisjonell JavaScript.
Det gjør det i teorien mulig å legge en del tyngre operasjoner over på klienten, minsker trykk på server, og kan gi en bedre brukeropplevelse.
WebAssembly kan også kommunisere fritt med JavaScript, så du kan fint bruke både bibliotek og funksjonalitet fra JavaScript-verden!
Hva slags stack bruker man sammen med Blazor? Hva fungerer best i dine øyne? 📚
Blazor er utviklet for å brukes sammen med Microsofts nyeste versjon av .NET, .NET 5, så en stack bestående av C#/.NET Core og Blazor er ganske gitt.
Ettersom det, som sagt, er Microsoft som står bak hele stacken, så er Azure et naturlig valg av plattform å publisere og drifte løsningene man jobber med.
Hvilket frontend-rammeverk velger utviklere i 2020
Hva bruker dere hos Epinova Blazor til? 💼
Vi bruker ikke Blazor så mye ennå, da vi har valgt å se litt an hvor det har vært på vei.
Men vi ser at med lansering av .NET 5 så er det mye entusiasme og snakk rundt Blazor, som vi naturligvis deler, som gjør at det nå er riktig tidspunkt for oss å ta det i bruk.
EpiServer kommer med en ny versjon i Q1 2021 og vi kan da begynne å bruke Blazor også i kundeprosjekter på Episerver, så det blir en veldig spennende vår for oss.
«Du kan fint bruke Mac eller Linux også!»
Hva trenger man egentlig for å komme i gang med Blazor? 📝
Fordelen med Blazor og .NET Core er at det ikke lengre er et krav å bruke Windows-PC. Du kan fint bruke Mac eller Linux også!
Microsofts Visual Studio Code er en veldig bra editor å bruke når man utvikler i .NET Core og Blazor. Der finnes det massevis med extensions man kan installere for å få en setup som er akkurat slik du vil ha det.
Sitter du på Windows så har du muligheten til å velge å bruke Visual Studio Core, på samme måte som Mac og Linux, men du har i tillegg muligheten til å fortsette å bruke “vanlig” Visual Studio som mange kanskje er godt kjent med fra tidligere.
Dette blir nytt med .NET 5 og C# 9
Hva kommer til Blazor i framtida? 🚝
Videreutviklingen av features og fokusområdene for Blazor skjer i felleskap med community.
Det vil si at fremtiden for Blazor i stor grad bestemmes av hva folk savner eller behøver!
For eksempel så har man i .NET 5-oppdatering av Blazor jobbet mye med ytelse, CSS isolasjon (Blazor isolerer da CSS-regler for en komponent, sånn at komponentens regler ikke påvirker andre deler av løsningen), og lazy-loading.
Er Blazor framtida for webutvikling? 😎
Framtida er kanskje et litt sterkt ord.
Rammeverks-konkurrentene Vue, React og Angular har stor spredning og aktive community så det kommer til å bestå.
Men vi får derimot ytterligere et attraktivt alternativ som har backing fra en stor aktør innenfor teknologiverdenen.
Min personlige mening er at Blazor kommer til å bli et populært valg innenfor løsninger som baseres på .NET, og kommer sikkert til å lokke en god del JavaScript-utviklere over til .NET-plattformen.
Hva er greia med webutvikling i .NET?
Hvorfor? Hvordan? Og kan man bruke Mac? Vi stiller Tobias Thorstensen alle de dumme .NET-spørsmålene.