Hvis du i det hele tatt har brukt Windows veldig lenge, har du sannsynligvis hørt om Microsofts .NET, sannsynligvis fordi et program ba deg om å installere det, eller du la merke til det i listen over installerte programmer. Med mindre du er en utvikler, trenger du ikke mye kunnskap for å bruke den. Du trenger det bare for å fungere. Men siden vi nørder liker å vite ting, bli med oss når vi utforsker nettopp hva .NET er og hvorfor så mange applikasjoner trenger det.
.NET Framework, forklart
Selve navnet “.NET Framework” er litt feilaktig. EN rammeverk (i programmeringsbetingelser) er egentlig en samling av Application Programming Interfaces (APIer) og et delt kodebibliotek som utviklere kan ringe når de utvikler applikasjoner, slik at de ikke trenger å skrive koden fra bunnen av. I .NET Framework får biblioteket med delt kode navnet Framework Class Library (FCL). Kodebitene i det delte biblioteket kan utføre alle slags forskjellige funksjoner. Si for eksempel at en utvikler trengte applikasjonen deres for å kunne pinge en annen IP-adresse i nettverket. I stedet for å skrive den koden selv, og deretter skrive alle de små bitene som må tolke hva ping-resultatene betyr, kan de bruke kode fra biblioteket som utfører den funksjonen.
Og det er bare et lite eksempel. .NET Framework inneholder titusenvis av delte koder. Denne delte koden gjør utviklernes liv mye lettere fordi de ikke trenger å finne opp hjulet på nytt hver gang applikasjonene deres trenger å utføre en felles funksjon. I stedet kan de fokusere på koden som er unik for applikasjonene deres og brukergrensesnittet som knytter alt sammen. Å bruke et rammeverk med delt kode som dette hjelper også med å gi noen standarder mellom applikasjoner. Andre utviklere kan forstå hva et program gjør lettere og brukere av applikasjonene kan stole på at dialogbokser Åpne og Lagre som fungerer likt i forskjellige applikasjoner.
Så hvorfor er navnet feilaktig?
Fordi .NET i tillegg til å fungere som et rammeverk for delt kode, også gir en kjøretidsmiljø for applikasjoner. Et kjøretidsmiljø gir en virtuell maskinlignende sandkasse der applikasjoner kjøres. Mange utviklingsplattformer gir samme type ting. Java og Ruby on Rails, for eksempel, gir begge sine egne kjøretidsmiljøer. I .NET-verdenen kalles kjøretidsmiljøet Common Language Runtime (CLR). Når en bruker kjører et program, blir koden for det programmet faktisk kompilert til maskinkode ved kjøretid og deretter kjørt. CLR tilbyr også noen andre tjenester, for eksempel administrering av minne- og prosessortråder, håndtering av program unntak og administrasjon av sikkerhet. Kjøretidsmiljøet er egentlig en måte å trekke applikasjonen fra den faktiske maskinvaren applikasjonen kjører på.
Det er flere fordeler med å ha applikasjoner kjørt i et kjøretidsmiljø. Den største er bærbarhet. Utviklere kan skrive koden sin ved hjelp av et hvilket som helst antall støttende språk, inkludert favoritter som C #, C ++, F #, Visual Basic og noen få dusin andre. Denne koden kan deretter kjøres på hvilken som helst maskinvare som .NET støttes på. Mens plattformen tilsynelatende var designet for å støtte annen maskinvare enn Windows-baserte PC-er, førte den proprietære karakteren til at den for det meste ble brukt til Windows-applikasjoner.
Microsoft har laget andre implementeringer av .NET for å løse dette. Mono er et gratis og åpen kildekode-prosjekt designet for å gi kompatibilitet mellom .NET-applikasjoner og andre plattformer, spesielt Linux. .NET Core-implementeringen er også gratis og open source-rammeverk designet for å bringe lette, modulære apper til flere plattformer. NET Core er ment å gi støtte til Mac OS X, Linux og Windows (inkludert støtte for Universal Windows Platform-apper).
Som du kan forestille deg, kan et rammeverk som .NET være en virkelig velsignelse på utviklingssiden av ting. Det lar utviklere skrive kode ved hjelp av deres foretrukne språk og være trygg på at koden kan kjøre hvor som helst rammeverket støttes. Brukere drar nytte av konsistente applikasjoner og også det faktum at mange apper kanskje ikke utvikles i det hele tatt hvis utviklerne ikke hadde tilgang til rammeverket.
Hvordan kommer .NET på systemet mitt?
.NET Framework har en litt kronglete historie, og har sett en rekke versjoner opp gjennom årene. Vanligvis vil den nyeste versjonen av .NET tilgjengelig være inkludert i utgivelsen av hver versjon av Windows. Versjonene var ment å være bakoverkompatible (slik at et program skrevet for versjon 2 kunne kjøres hvis versjon 3 ble installert), men det fungerte ikke så bra. Ikke alle applikasjoner fungerte med de nyere versjonene. Spesielt på systemer som kjører Windows XP og Vista, vil du ofte se flere forskjellige versjoner av .NET installert på en PC.
Det var i hovedsak tre måter som en bestemt versjon av .NET Framework ville bli installert på:
- Din versjon av Windows kan ha den inkludert i standardinstallasjonen.
- Et program som krevde en bestemt versjon, kan installere det under sin egen installasjon.
- Noen applikasjoner vil til og med sende deg til et eget nedlastingsside for å hente og installere en bestemt versjon av .NET Framework.
Heldigvis er ting jevnere i moderne versjoner av Windows. En gang i løpet av Windows Vista-dagene skjedde to viktige ting. Først ble .NET Framework 3.5 utgitt. Denne versjonen ble omarbeidet for å inkludere komponenter fra versjon 2 og 3. Apper som krevde tidligere versjoner, ville nå fungere hvis du nettopp hadde versjon 3.5 installert. For det andre begynte endelig oppgraderinger til .NET Framework å bli levert gjennom Windows Update.
Til sammen betydde disse to tingene at utviklere nå ganske mye kunne stole på at brukere hadde de riktige komponentene allerede installert og ikke lenger måtte be brukerne om å utføre flere installasjoner.
I SLEKT: Hva Windows 10s "Valgfrie funksjoner" gjør, og hvordan du slår dem på eller av
Da Windows 8 rullet rundt, fulgte en ny, helt redesignet .NET Framework versjon 4 med den. Versjon 4 (og oppover) har ikke bakoverkompatibilitet med eldre versjoner. Den er designet slik at den kan kjøres sammen med versjon 3.5 på samme PC. Apper som er skrevet til versjoner 3.5 og nyere vil kreve at versjon 3.5 installeres, og apper som er skrevet til versjon 4 eller høyere, må versjon 4 installeres. Den gode nyheten er at du som bruker ikke lenger trenger å bekymre deg for disse installasjonene. Windows håndterer stort sett alt for deg.
Windows 8 og Windows 10 inkluderer versjoner 3.5 og 4 (den nåværende versjonen er 4.6.6). De installeres på førstegangsbasis, så første gang du installerer en app som trenger en av disse versjonene, vil Windows legge den til automatisk. Du kan faktisk legge dem til Windows selv på forhånd hvis du vil tilgang til Windows ’valgfrie funksjoner . Du har muligheter for å legge til versjon 3.5 og versjon 4.6 separat.
Når det er sagt, er det ingen reell grunn til å legge dem til i Windows-installasjonen selv, med mindre du utvikler applikasjoner. Første gang du installerer en app som trenger en av de tilgjengelige versjonene, vil Windows legge den til for deg bak kulissene.
Hva kan jeg gjøre hvis jeg har problemer med .NET?
Du vil sannsynligvis ikke støte på problemer med .NET i moderne versjoner av Windows. Siden begge nødvendige versjonene følger med Windows og installeres etter behov, er appinstallasjoner ganske sømløse. På eldre versjoner av Windows (tenk XP og Vista) måtte du ofte avinstallere og installere de forskjellige versjonene av .NET på nytt for å få ting til å fungere. Du måtte også hoppe gjennom bøyler for å sikre at riktige versjoner av .NET ble installert for appene som trengte dem. Nå håndterer Windows de tingene for deg.
Når det er sagt, hvis du har problemer som du tror er relatert til .NET-rammeverket, er det noen få trinn du kan ta.
I SLEKT: Hvordan skanne etter (og fikse) korrupte systemfiler i Windows
Først bør du sørge for at Windows har alle de siste oppdateringene. Hvis en oppdatering til .NET Framework er tilgjengelig, kan det bare løse problemene dine. Du kan også prøve å fjerne .NET Framework-versjonene fra datamaskinen og deretter legge dem til igjen. Bare trykk innlegget vårt legge til flere Windows-funksjoner for å se hvordan. Hvis ingen av disse trinnene fungerer, kan du prøve skanning etter korrupte systemfiler i Windows. Det tar ikke lang tid, og det kan gjenopprette systemfiler som har blitt ødelagt eller forsvunnet. Det er alltid verdt et skudd.
Hvis ikke noe av dette fungerer, kan du prøve å laste ned og kjøre Microsofts .NET Framework reparasjonsverktøy . Verktøyet støtter alle gjeldende versjoner av .NET Framework. Det hjelper deg med å feilsøke vanlige problemer med oppsett eller oppdateringer til .NET og kan kanskje reparere eventuelle problemer du har automatisk.
Og der har du det. Det kan være mer enn du noen gang ønsket å vite om .NET Framework, men hei - neste gang det kommer opp på en fest, kan du imponere alle vennene dine.