Microsoft tilbyr et verktøy for å utvikle native Android- og iOS-applikasjoner på tvers av programmeringsspråk som .NET eller C #.
Microsoft Technology Associate har som mål å tilrettelegge dot net-utviklere for å utnytte potensialet i den nyeste Blazor-verktøysettet for å lage webapplikasjoner eller native iOS / Android-applikasjoner. Microsoft hadde kunngjort en eksperimentell 'Blazor-bygning' for Blazor, som er en funksjon av ASP.NET-plattformen som gjør det mulig for utviklere å lage interaktive webapplikasjoner og brukergrensesnitt ved hjelp av C # i stedet for JavaScript. Denne bindingen av komponentene lar dem lage opprinnelige mobilapplikasjoner ved hjelp av .NET eller C # for Android eller iOS ved hjelp av kjent webprogrammering.
I år 2019 hadde Microsoft vist frem en løsning ved hjelp av den samme teknologien der den utviklet en stasjonær Flutter-app, ment for mobil og skrevet i dart, men i stedet ved hjelp av Blazor og .NET. Microsoft Blazor er et eksperimentelt rammeverk for nettbrukergrensesnitt av ASP.NET som tar sikte på å bringe applikasjoner over alle nettlesere gjennom WebAssembly. Det lar utviklere lage ekte full-stack applikasjoner og dele kode på tvers av klienter og servere uten krav om plugins eller transpilering. Microsoft eksperimenterer med plattformen for å imøtekomme utvikleres krav som er kjent med det grunnleggende om webprogrammering og mønstre for å lage native applikasjoner. I denne artikkelen skal vi utforske hvordan Microsoft Blazor revolusjonerer nettstedsutviklingstjenester i .NET.
Hvorfor er Blazor den nye sprøytenarkomanen?
Microsofts Blazor er det siste rammeverket for brukergrensesnitt på klientsiden som kommer fra ASP.NET-fellesskapet. Det største salgsaspektet ved denne plattformen er dens evne til å utvikle rike brukergrensesnittopplevelser på nettet ved hjelp av CSS, HTML eller C # i stedet for JavaScript. Den har alt som de fleste utviklere har drømt om så lenge. Som utvikler eller tilknyttet Microsoft-nettsted hvis du har fulgt med på den nye utviklingen i ASP.NET-feltet de siste årene, har du definitivt hørt om Blazor. JavaScript-rammeverket har vært de facto-tiltaket siden starten for front-end webutvikling, og utviklere syntes aldri å være fornøyd med det. Og det var mange transpiler og supersett som har dukket opp de siste par årene som Dart, CoffeeScript, Elm, Scala, etc. for å forbedre JavaScript-plattformen og gjøre den mer vedlikeholdbar. Imidlertid har Blazor allerede begynt prosessen, siden den har potensialet til å være en effektiv og svært produktiv programmeringsplattform enn den opprinnelige designen, og viser seg å være en direkte samtid til JavaScript-rammene for ensidig applikasjonsutvikling. De viktigste målene for dette rammeverket er-
Opprette rike og interaktive webapplikasjoner / brukergrensesnitt ved hjelp av C # i stedet for JavaScript
Del eller samle applikasjonslogikk på serversiden eller klientsiden som er utviklet i .NET-rammeverket
Gjengir brukergrensesnitt CSS og HTML for nettleserstøtte som inkluderer mobile nettlesere
Integrering av de nyeste hostingplattformene som Docker og mange flere.
Blazor-rammeverket er en enkeltsidig applikasjonsutviklingsløsning som lar brukerne bygge et interaktivt nettbrukergrensesnitt ved hjelp av C # i stedet for JavaScript. Inspirert av JavaScript-rammer som Angular, Vue eller React, bruker den lignende konsepter for å utvikle interaktive løsninger. Ethvert Blazor-program er utviklet fra gjenbrukbare komponenter i Razor, dvs. markeringssyntaks for C # og HTML. Med Blazor deler Microsoft forskjellige eksperimenter som foregår og borer det med de beste skrivebordsprogrammene ved hjelp av Web Window. Men de siste for utvikling av mobilapps er der Blazor-programmering er parret med Xamarin-kontroller.
Les bloggen - Microsoft arbeider videre med å målrette utvikling av mobilapper med Blazor
Hva gjør Blazor til en fleksibel plattform for det beste selskapet for nettutvikling?
Blazor er arkitektur da den skiller mellom hvordan endringene blir gjengitt og hvordan den beregner komponentmodellene for brukergrensesnittet eller applikasjonsendringene. Denne funksjonen skiller denne plattformen fra sin samtid, dvs. andre rammer for brukergrensesnittutvikling som ReactJS, Angular eller React Native som bare kan utvikle webteknologier basert på brukergrensesnitt. Ved å bruke flere gjengivelser for å utvikle løsninger, er Blazor ikke bare i stand til å utvikle de nettbaserte komponentene, men kan også utvikle innebygde mobile brukergrensesnitt. I tillegg krever det ikke at komponentene utvikles annerledes, og komponentene som er utviklet for webgjengivere kan ikke brukes sammen med andre innfødte mobile gjengivelser. Men programmeringsmodellen forblir den samme, noe som betyr at når utviklere blir kjent med denne modellen, kan de enkelt lage brukergrensesnitt ved hjelp av en hvilken som helst gjengivelse. Komponentene i applikasjonsmodellen er-
WebAssembly Renderer
Ekstern gjengivelse
Elektronrenderer
Mobil Blazor Binding Renderer
Hosting Model - Blazors AP-modell i kjernen holdes ansvarlig for å beregne og vedlikeholde UI-endringene på tvers av ASP.NET-utviklingstjenestene. Imidlertid kan utviklere også bruke andre gjengivere for å kontrollere skjermen og oppdateringene. Disse app-renderermodellene blir for det meste referert til som hosting-modeller, og på tidspunktet for utvikling er det vanligvis fire modeller i Blazor. De er-
Blazor Server
BlazorWebAssemble
Blazor Electron
Blazor-bindinger
Av disse modellene er Blazor Server den eneste modellen som er kategorisert som produksjonen som støttes i skrivende stund, mens Blazor Bindings og Electron er merket som eksperimentelt støttede modeller.
Microsoft Technology Associate: Blazors funksjoner
Det er allerede kunngjort at året 2020 definitivt vil være et høydepunkt for Microsofts Blazor, og snart vil det bli mainstream. Plattformen er virkelig enkel og enkel å bruke, siden den kombinerer bekvemmeligheten til Razor (nettleser + Razor) sammen med ASP.NET-konseptene. Blazor har også strømlinjeformet de utrolige mønstrene på tvers av de populære JavaScript-rammene som React eller Angular sammen med å utnytte malene som tilbys av Dotnet-konvensjoner eller Razor. Blazor er en utrolig plattform som gjør det mulig å lage interaktive brukergrensesnitt på klientsiden ved hjelp av ASP.NET-rammeverket. Ved hjelp av Blazor-plattformen kan utviklere gjenbruke biblioteker og koder fra ethvert segment av applikasjoner på serversiden. Siden den også bruker ASP.NET-rammeverket for å utvikle interaktive applikasjoner på klientsiden, bygger den på det allerede kraftige settet med rammer og biblioteker. Noen av de nyttige funksjonene på denne plattformen som gjør at den skiller seg ut, er-
Den har mange forhåndsdefinerte brukergrensesnittkomponenter, slik at utviklere enkelt kan komme i gang med å lage fantastiske applikasjoner. Denne funksjonen er verdsatt av alle tilpassede webutviklingsselskaper eller organisasjoner
Denne pakken krever ingen JavaScript-teknologi eller funksjoner. I stedet kan oppgaver gjøres enkelt ved hjelp av C #. Dette er for å forbedre den generelle produktiviteten til utviklere eller organisasjoner
den har innebygd støtte for autentisering av apputviklingskomponenter for .NET framework
Utviklere kan ringe JavaScript-funksjoner fra ASP.NET-metoden ved hjelp av en funksjon som kalles JavaScript-interoperabilitet.
Hver Microsoft-nettstedsutvikler synes Blazor er tiltalende fordi den er utviklet av ASP.NET-fellesskapet som et rammeverk for å lage applikasjoner på klientsiden som kjører under WebAssembly. Det gir fordelene med et moderne og rikt applikasjonsrammeverk på én side ved å bruke ASP.NET-teknologien fra ende til annen. Ideen til dette rammeverket kan potensielt kombinere effektiviteten til C #, og Razor er et webprosjekt på klientsiden som kan kjøre helt i nettleseren. Den har alle funksjonene som kreves for å lage et moderne nettrammeverk, hvorav noen er oppført nedenfor -
Modell for utvikling av et sammensettbart brukergrensesnitt
Direkte lasting av nettleseren i løpet av applikasjonsutviklingsfasen
Bruker de nyeste webutviklingsfunksjonene
Avhengighetsinjeksjon
Evne til å kjøre på tvers av gamle nettlesere
Fullfør ASP.NET feilsøking
Utviklet segmenter av den åpne webutviklingsplattformen uten å kreve plugins
Rik intelligens og UI-verktøy
Gjengivelse på serversiden
Les bloggen - Hva er forskjellen mellom C #, .NET, ASP.NET, Microsoft.NET og Visual Studio?
Hvordan Microsoft Blazor sammenligner seg med ASP.NET interaktiv nettutvikling
Enhver vanlig ASP.NET gjengir brukergrensesnittet som en strengblokk. Blazor, derimot, utviklet eller gjengitt et tre, men ikke en streng. Dette rammeverket er en representasjon av en Document Object Model som betyr at den holder komponentene i minnet mens Blazor beholder representasjonen. Eventuelle endringer eller modifikasjoner som er gjort i disse komponentene kan utløse en brukergrensesnittoppdatering for de samme elementene for dokumentobjektmodell. Det er en stor forskjell mellom begge disse prosessene som gjengir strenger. Spesielt bruker det beste webutviklingsselskapet Blazor-koder og kan ikke få tilgang til dokumentobjektmodellkodene direkte. Denne begrensningen fungerer annerledes for ASP.NET-kjernen og Razor, ettersom de er avhengige av JavaScript-rammeverket for å få full tilgang til brukergrensesnittelementene til interaktive applikasjoner.
Blazor-feriestedet gjengir trærne til å gå tilbake til den tidligere Document Object Model (DOM) -representasjonen og se etter de spesielle delene av den samme modellen. Senere oppdaterer, redigerer eller sletter dette rammeverket dem deretter. Rammeverket strømlinjeformer endringene som gjøres i dokumentmodellen eller manipulerer gjengivelsestreet for å utføre endringene. Denne mekanismen er noe som gjør at C # -språket kan fungere på klientsiden, interaktiv gjengivelse av applikasjoner. Fordelene med Blazor på klientsiden er-
For nettstedsutviklingstjenester tillater Blazor utviklere å kjøre ASP.NET-koden direkte i nettleseren. Dette rammeverket bryter også monopolet på JavaScript-rammeverket på en full-stack plattform, fordi NET-fagfolk på grunn av sin hjelp ikke trenger å bli programmeringspolyglots. De kan også utvikle hele løsninger uten å skrive koder i JavaScript
Blazor UI-koder blir samlet inn i ASP.NET som et mellomspråk, og det betyr at rammeverket har samme potensial som JavaScript-koden. Kompilasjonsmodellen kan også skape en enorm forskjell for ytelsesstyrte nettlesere.
Utviklere kan enkelt validere koden mellom serveren eller applikasjonene på klientsiden. Tenk for eksempel at en ASP.NET-utviklingstjenesteplattform har valideringslogikken som kan brukes på både backend og nettleser. Blazor tillot dem å lage et klassebibliotek i ASP.NET-standarden og dele det på serversiden eller klientsiden. Eventuelle endringer i valideringslogikken blir automatisk brukt på hver av disse plattformene.
Blazor Server
Denne modellen er en av de offisielt støttede modellene for tiden, og med sin hjelp kan applikasjoner lett kjøres på serveren, men ikke i nettleseren. Blazor Server bruker SignalR-tilkoblingen for å overføre brukergrensesnittoppdateringene fra serveren til nettleseren. Denne serverhostingsmodellen er for tiden i produksjonsstatus-støttet alternativ for Microsofts grunnleggende utvikling. Under denne modellen kjører plattformorienterte applikasjoner på serveren og på toppen av ASP.NET-kjøretiden. Når utviklere eller brukere laster inn dette programmet, lastes først en liten JavaScript-fil ned som oppretter en toveis sanntidsforbindelse med serveren (SignalR-tilkobling). Enhver interaksjon mellom en bruker og applikasjonen blir umiddelbart overført tilbake til den tilsvarende serveren med tilkoblingen for serverbehandlingen. Når serveren er ferdig behandlet, blir brukergrensesnittoppdateringene og endringene overført til samme klient og brukt på Document Object Model. Microsoft har utviklet en ytende algoritme for å beregne forskjeller og overføre dem i et kompakt binært format. I motsetning til de fleste andre interaktive webapplikasjoner som vanligvis utfører en statsløs tilnærming, har Blazor-serverapplikasjonsmodellene samme tilstand på tvers av serveren.
For utviklermiljøet krever det i noen få tilfeller en omtenkingstilnærming, men generelt kan de bruke lignende konsepter som de bruker i ASP.NET-kjerneapplikasjoner. Den største fordelen med denne modellen er at du ikke trenger å utvikle et annet applikasjonsprogrammeringsgrensesnitt for å kommunisere mellom serveren og klienten. Dette er fordi alle aspekter kjører på serveren, slik at et tilpasset webutviklingsselskap eller utvikler direkte kan kalle disse funksjonene i henhold til deres logikk. På grunn av beregningsprosessene på serveren, representerer Blazor Server interaktive webløsninger en perfekt passform for lavere enheter eller tynne klienter.
BlazorWebAssemble
Det er en stor avtale at hostingmodellene får mer, men av gode grunner. Denne modellen gir direkte konkurranse mot JavaScript interaktiv applikasjonsutvikling som React, VueJS eller Angular. Ved hjelp av WebAssembly kan utviklere enkelt skrive logikk og koder for brukergrensesnitt ved hjelp av C # i stedet for JavaScript. Da Microsoft kunngjorde Blazor først, handlet det utelukkende om WebAssembly-modellene. Denne modellen tillot et program å laste inn i kjøretidsformatet, og deretter lastet det hele applikasjonsenheten sammen med dens avhengigheter. Avhengighetene til BlazorWebAssembly inkluderer rammeverket, System.dll osv., Men kjøretiden er i det binære formatet og andre samlinger er i samme format, slik at utviklere kan bruke den i vanlig ASP.NET applikasjonsutvikling.
Blazor WebAssembly bruker tolkekoden for å kjøre eller laste inn et program, og i denne modusen kan tolk utføre et interaktivt applikasjonsgrensesnitt. Den eneste delen av denne prosessen som kombineres i WebAssembly-modus, er dens monotid. Den største fordelen er ytelsen og kompromisset med store eller omfangsrike filer. Noen av fordelene med WebAssembly i Blazor er-
den kompilerer de statiske filene, noe som betyr at det ikke er noe krav for utviklere å vurdere ASP.NET-kjøretiden på serveren
De fleste oppgavene i Blazor blir lastet ned fra serveren til klientene
Applikasjonene kan også kjøres i frakoblet modus eller tilstand
Det letter kodedeling der C #-komponentene kan deles effektivt mellom serveren og klientene
Vanligvis benyttes en just-in-time kompilator i ASP.NET-applikasjoner, men den støttes ikke nylig av WebAssembly. Imidlertid kan det legges til i sin fremtidige versjon av standarden, men foreløpig brukes en annen til å utføre ASP.NET-koden. Microsofts tilknyttede plattform jobber med planer og en Ahead Of Time-kompilering (AOT) for å kompilere applikasjoner eller rammesamlinger direkte til WebAssembly. Denne samlingen resulterer i en effektiv interaktiv applikasjonsutviklingstid og vil vise seg å være ytelsesorientert når det gjelder kjøretid.
Bunnlinjen
I denne tiden hvor det allerede er mye oppmerksomhet og diskusjon rundt oppføringen av Blazor i .NET-utvikling, sitter utviklerne igjen med mange valg. I denne artikkelen har vi gått gjennom introduksjonen og kjernekonseptene til Microsofts Blazor, Sever, WebAssembly, etc. Vi har også diskutert hvordan dette rammeverket er distribuert i den nåværende tiden for interaktiv utvikling av webapplikasjoner i ASP.NET-plattformen. Blazor er en spennende plattform og har et større rom for forbedringer, spesielt når det gjelder utvikling og verktøy.
WebAssembly er også den viktigste teknologien som de fleste apputviklingsselskaper eller front-end-utviklere ikke bare kan ignorere. Dette er en utmerket plattform for ASP.NET-profesjonelle som lar dem dra nytte av det for å bli full-stack-utviklere uten å måtte lære flere programmeringsspråk. Denne plattformen gir klarhet når det gjelder å utvikle et brukergrensesnitt for en enkelt programmeringsmodell, og den kan enkelt læres sammen med å bruke rammekomponentene hvor som helst.