Hva er .NET Framework? Forklare Architecture og komponenter

โšก Smart oppsummering

.NET Framework er et Microsoft plattform for bygging og drift Windows skrivebords-, nett- og tjenesteapplikasjoner. Den samler Common Language Runtime, et delt klassebibliotek og sprรฅk som C# og VB.NET i ett administrert utviklingsmiljรธ.

  • ๐Ÿงฉ Definisjon: .NET Framework er et Windows-eneste stabel med verktรธy, sprรฅk og biblioteker for skrivebords- og nettapper.
  • ๐Ÿ›๏ธ Archilรฆre: Common Language Runtime kjรธrer administrert kode, mens klassebiblioteker leverer gjenbrukbar, ferdiglaget funksjonalitet.
  • โš™๏ธ Kjernekomponenter: CLR, klassebiblioteket og stรธttede sprรฅk samarbeider for รฅ kompilere og kjรธre applikasjoner.
  • ๐Ÿ›ก๏ธ Designprinsipper: Interoperabilitet, portabilitet, sikkerhet, automatisk minnehรฅndtering og forenklet distribusjon former rammeverket.
  • ๐ŸŒ Applikasjonstyper: WinForms bygger skrivebordsapper, ASP.Net driver nettsteder, og ADO.Net kobler seg til databaser.
  • ๐Ÿค– AI-relevans: ML.NET og ONNX Runtime legger til maskinlรฆring, mens GitHub Copilot akselererer .NET-koding.

Hva er .NET Framework

Hva er .Net Framework?

. Net Framework er en programvareutviklingsplattform utviklet av Microsoft for bygging og drift Windows applikasjoner. .Net-rammeverket bestรฅr av utviklerverktรธy, programmeringssprรฅk og biblioteker for รฅ bygge skrivebords- og webapplikasjoner. Det brukes ogsรฅ til รฅ bygge nettsteder, nettjenester og spill.

.Net-rammeverket var ment รฅ lage applikasjoner som skulle kjรธre pรฅ Windows Plattform. Den fรธrste versjonen av .Net-rammeverket ble utgitt i 2002. Versjonen ble kalt .Net framework 1.0. De Microsoft .Net Framework har kommet langt siden den gang, og den nyeste versjonen er .Net Framework 4.8.1.

Ocuco Microsoft .Net-rammeverket kan brukes til รฅ lage begge deler โ€” Skjemabasert og Nettbasert applikasjoner. Webtjenester kan ogsรฅ utvikles ved hjelp av .Net-rammeverket.

Rammeverket stรธtter ogsรฅ ulike programmeringssprรฅk som Visual Basic og C#. Sรฅ utviklere kan velge og velge sprรฅk for รฅ utvikle den nรธdvendige applikasjonen. I dette kapittelet vil du lรฆre noe grunnleggende om .Net-rammeverket.

. Net Framework Architecture

. Net Framework Architecture er en programmeringsmodell for .Net-plattformen som gir et utfรธrelsesmiljรธ og integrasjon med ulike programmeringssprรฅk for enkel utvikling og distribusjon av div. Windows og skrivebordsapplikasjoner. Den bestรฅr av klassebiblioteker og gjenbrukbare komponenter.

Den grunnleggende arkitekturen til .Net-rammeverket er vist nedenfor.

. Net Framework ArchiTecture Diagram

. Net Framework ArchiTecture Diagram

.NET-komponenter

Arkitekturen til .Net-rammeverket er basert pรฅ fรธlgende nรธkkelkomponenter:

1. Common Language Runtime

Ocuco Common Language Runtime (CLR) er utfรธrelsesmotoren i .Net-arkitekturen som .Net-programmene kjรธres pรฅ.

CLR har fรธlgende hovedfunksjoner:

Avvikshรฅndtering โ€” Unntak er feil som oppstรฅr nรฅr applikasjonen kjรธres. Eksempler pรฅ unntak er:

  • Hvis et program prรธver รฅ รฅpne en fil pรฅ den lokale maskinen, men filen ikke er til stede.
  • Hvis applikasjonen prรธver รฅ hente noen poster fra en database, men tilkoblingen til databasen er ikke gyldig.

Sรธppelsamling โ€” Sรธppeltรธmming er prosessen med รฅ fjerne uรธnskede ressurser nรฅr de ikke lenger er nรธdvendige. Eksempler pรฅ sรธppeltรธmming er:

  • En filreferanse som ikke lenger er nรธdvendig. Hvis programmet har fullfรธrt alle operasjoner pรฅ en fil, er filreferansen kanskje ikke lenger nรธdvendig.
  • Databasetilkoblingen er ikke lenger nรธdvendig. Hvis applikasjonen har fullfรธrt alle operasjoner pรฅ en database, kan det hende at databasetilkoblingen ikke lenger er nรธdvendig.

Arbeid med ulike programmeringssprรฅk โ€” Som nevnt i et tidligere avsnitt, kan en utvikler utvikle en applikasjon i en rekke .Net-programmeringssprรฅk.

  1. Sprรฅk โ€” Det fรธrste nivรฅet er selve programmeringssprรฅket; de vanligste er VB.Net og C#.
  2. kompilatoren โ€” Det finnes en separat kompilator for hvert programmeringssprรฅk. Sรฅ under VB.Net-sprรฅket vil det vรฆre en separat VB.Net-kompilator. Pรฅ samme mรฅte vil du for C# ha en annen kompilator.
  3. Felles sprรฅkbruk โ€” Dette er det siste laget i .Net, som brukes til รฅ kjรธre et .Net-program utviklet i et hvilket som helst programmeringssprรฅkDen pรฅfรธlgende kompilatoren sender programmet til CLR-laget for รฅ kjรธre .Net-applikasjonen.

.NET-komponenter

2. Klassebibliotek

.NET Framework inkluderer et sett med standard klassebiblioteker. Et klassebibliotek er en samling metoder og funksjoner som kan brukes til kjerneformรฅlet.

For eksempel finnes det et klassebibliotek med metoder for รฅ hรฅndtere alle operasjoner pรฅ filnivรฅ. Sรฅ det finnes en metode som kan brukes til รฅ lese tekst fra en fil. Pรฅ samme mรฅte finnes det en metode for รฅ skrive tekst til en fil.

De fleste metodene er delt inn i enten System.* eller Microsoft.* navneomrรฅder. (Stjernen * betyr bare en referanse til alle metodene som faller inn under System eller Microsoft navnerom.)

Et navnerom er en logisk separasjon av metoder som grupperer relaterte klasser under ett navn.

3. sprรฅk

Applikasjonstypene som kan bygges i .Net-rammeverket er grovt klassifisert i fรธlgende kategorier.

WinForms โ€” Dette brukes til utviklingping Skjemabaserte applikasjoner, som ville kjรธre pรฅ en sluttbrukermaskin. Notisblokk er et eksempel pรฅ et klientbasert program.

ASP.Net โ€” Dette brukes til utviklingping nettbaserte applikasjoner, som er laget for รฅ kjรธre pรฅ alle nettlesere som Internet Explorer, Chrome eller Firefox.

  • Nettapplikasjonen ville bli behandlet pรฅ en server som ville ha Internet Information Services installert.
  • Internettinformasjonstjenester, eller IIS, er en Microsoft komponent som brukes til รฅ utfรธre en Asp.Net sรธknad.
  • Resultatet av kjรธringen sendes deretter til klientmaskinene, og utdataene vises i nettleseren.

ADO.Net โ€” Denne teknologien brukes til รฅ utvikle applikasjoner for รฅ samhandle med databaser som Oracle or Microsoft SQL Server.

Microsoft sikrer alltid at .Net-rammeverk er i samsvar med alle de stรธttede Windows operativsystemer.

.Net Framework Design Prinsipp

Fรธlgende designprinsipper er det som gjรธr .Net-rammeverket svรฆrt relevant for รฅ lage .Net-baserte applikasjoner.

1) Interoperabilitet โ€” .Net-rammeverket gir mye bakoverstรธtte. Anta at du hadde et program bygget pรฅ en eldre versjon av .Net-rammeverket, la oss si 2.0. ร… kjรธre det samme programmet pรฅ en maskin med en hรธyere versjon, la oss si 3.5, ville fortsatt fungere. Dette er fordi med hver utgivelse, Microsoft sikrer at eldre rammeversjoner gel godt med den nyeste versjonen.

2) Bรฆrbarhet โ€” Applikasjoner bygget pรฅ .Net-rammeverket kan tilpasses til รฅ fungere pรฅ alle Windows plattform. Og nรฅ i nyere tid, Microsoft ser ogsรฅ for seg รฅ lage Microsoft produkter fungerer pรฅ andre plattformer, for eksempel iOS og Linux.

3) Sikkerhet โ€” .NET Framework har en god sikkerhetsmekanisme. Den innebygde sikkerhetsmekanismen hjelper til med bรฅde validering og verifisering av applikasjoner. Hver applikasjon kan eksplisitt definere sin sikkerhetsmekanisme. Hver sikkerhetsmekanisme brukes til รฅ gi brukeren tilgang til koden eller til det kjรธrende programmet.

4) Minnehรฅndtering โ€” Common Language Runtime (CLR) gjรธr alt arbeidet til Minnehรฅndtering. .Net-rammeverket har all kapasitet til รฅ se ressursene som ikke brukes av et kjรธrende program. Det frigjรธr deretter disse ressursene deretter. Dette gjรธres via et program kalt ยซGarbage Collectorยป som kjรธrer som en del av .Net-rammeverket. Sรธppelinnsamleren kjรธrer med jevne mellomrom og sjekker hvilke systemressurser som ikke brukes, og frigjรธr dem deretter.

5) Forenklet distribusjon โ€” .Net-rammeverket har ogsรฅ verktรธy for รฅ pakke applikasjoner som er bygget pรฅ det. Disse pakkene kan deretter distribueres til klientmaskiner, hvor de automatisk installerer applikasjonen.

Spรธrsmรฅl og svar

.NET Framework kjรธrer bare pรฅ Windows og er nรฅ i vedlikeholdsmodus i versjon 4.8.1. Modern .NET, tidligere .NET Core, er plattformuavhengig, รฅpen kildekode og aktivt utviklet, noe som gjรธr det til det anbefalte valget for nye prosjekter.

Common Language Runtime (CLR) er motoren som kjรธrer administrert kode, hรฅndterer minne og unntak. Common Language Specification (CLS) er et sett med regler som alle .NET-sprรฅk fรธlger, slik at komponenter skrevet pรฅ forskjellige sprรฅk kan samhandle trygt.

.NET Framework stรธtter flere sprรฅk som kompilerer til et felles mellomliggende sprรฅk. De mest brukte er C# og VB.NET, med F# for funksjonell programmering. Alle deler samme kjรธretid, klassebibliotek og verktรธy.

Nei. .NET Framework er Windows-bare. For รฅ mรฅlrette Linux eller macOS Du bruker moderne .NET, tidligere .NET Core, som er plattformuavhengig. Det eldre Mono-prosjektet kjรธrte ogsรฅ noe .NET Framework-kode pรฅ andre operativsystemer.

Ja. .NET Framework er gratis รฅ laste ned og bruke, og det leveres innebygd i WindowsUtviklingsverktรธy som Visual Studio Community og Visual Studio Code er ogsรฅ gratis for enkeltpersoner, smรฅ team og รฅpen kildekode-prosjekter.

Ja. Versjon 4.8.1 stรธttes fortsatt som en Windows komponent og mottar sikkerhets- og pรฅlitelighetsrettelser. Imidlertid Microsoft fokuserer nye funksjoner pรฅ moderne .NET, sรฅ mesteparten av nyutviklingen retter seg nรฅ mot den plattformen i stedet for Framework.

Ja. ML.NET lar deg trene og kjรธre maskinlรฆringsmodeller direkte i C#, og ONNX Runtime kjรธrer forhรฅndstrente dyplรฆringsmodeller. Du kan ogsรฅ kalle skybaserte AI-tjenester, slik at .NET-applikasjoner legger til intelligente funksjoner uten รฅ forlate รธkosystemet.

Ja. GitHub Copilot foreslรฅr C#- og VB.NET-kode i Visual Studio og VS Code, stillasklasser, metoder og standardtekst fra kommentarer. Behandle resultatet som et fรธrsteutkast og gjennomgรฅ det, siden generert kode kan overse kanttilfeller eller prosjektkonvensjoner.

Oppsummer dette innlegget med: