Što je .NET Framework? Objasniti Architekstura i komponente

⚡ Pametni sažetak

.NET Framework je Microsoft platforma za izgradnju i rad Windows desktop, web i servisne aplikacije. Objedinjuje Common Language Runtime, dijeljenu biblioteku klasa i jezike poput C# i VB.NET u jedno upravljano razvojno okruženje.

  • 🧩 Definicija: .NET Framework je Windows-jedini skup alata, jezika i biblioteka za desktop i web aplikacije.
  • 🏛️ Architekstura: Common Language Runtime izvršava upravljani kod, dok biblioteke klasa pružaju višekratno upotrebljive, gotove funkcionalnosti.
  • Osnovne komponente: CLR, biblioteka klasa i podržani jezici rade zajedno kako bi kompajlirali i pokretali aplikacije.
  • 🛡️ Principi dizajna: Interoperabilnost, prenosivost, sigurnost, automatsko upravljanje memorijom i pojednostavljeno postavljanje oblikuju okvir.
  • 🌐 Vrste aplikacija: WinForms izrađuje desktop aplikacije, ASP.Net pokreće web stranice, a ADO.Net se povezuje s bazama podataka.
  • 🤖 Relevantnost umjetne inteligencije: ML.NET i ONNX Runtime dodaju strojno učenje, dok GitHub Copilot ubrzava .NET kodiranje.

Što je .NET Framework

Što je .Net Framework?

. NET Framework je platforma za razvoj softvera koju je razvio Microsoft za izgradnju i trčanje Windows aplikacije. .Net framework sastoji se od razvojnih alata, programskih jezika i biblioteka za izradu desktop i web aplikacija. Također se koristi za izradu web stranica, web usluga i igara.

.Net framework je bio namijenjen stvaranju aplikacija koje bi se pokretale na Windows Platforma. Prva verzija .Net frameworka objavljena je 2002. godine. Verzija se zvala .Net framework 1.0. The Microsoft .Net framework je od tada daleko napredovao, a najnovija verzija je .Net Framework 4.8.1.

The Microsoft .Net framework se može koristiti za stvaranje oboje - Na temelju obrasca i Web-based aplikacija. Web usluge također se može razviti korištenjem .Net okvira.

Okvir također podržava različite programske jezike kao što su Visual Basic i C#. Tako da programeri mogu birati i odabrati jezik za razvoj tražene aplikacije. U ovom ćete poglavlju naučiti neke osnove .Net okvira.

. NET Framework Architektura

. NET Framework Architektura je programski model za .Net platformu koji pruža izvršno okruženje i integraciju s različitim programskim jezicima za jednostavan razvoj i implementaciju raznih Windows i desktop aplikacije. Sastoji se od biblioteka klasa i komponenti za višekratnu upotrebu.

Osnovna arhitektura .Net frameworka prikazana je u nastavku.

. NET Framework Archidijagram strukture

. NET Framework Archidijagram strukture

.NET komponente

Arhitektura .Net frameworka temelji se na sljedećim ključnim komponentama:

1. Common Language Runtime

The Zajednički jezik Runtime (CLR) je izvršni mehanizam u .Net arhitekturi na kojem se izvode .Net programi.

CLR ima sljedeće ključne značajke:

iznimka Rukovanje — Iznimke su pogreške koje se javljaju prilikom izvršavanja aplikacije. Primjeri iznimki su:

  • Ako aplikacija pokuša otvoriti datoteku na lokalnom računalu, ali datoteka nije prisutna.
  • Ako aplikacija pokuša dohvatiti neke zapise iz a baza podataka, ali veza s bazom podataka nije važeća.

Kolekcija smeća — Sakupljanje smeća je proces uklanjanja neželjenih resursa kada više nisu potrebni. Primjeri sakupljanja smeća su:

  • Ručka datoteke koja više nije potrebna. Ako je aplikacija završila sve operacije na datoteci, ručka datoteke možda više nije potrebna.
  • Veza s bazom podataka više nije potrebna. Ako je aplikacija završila sve operacije na bazi podataka, veza s bazom podataka možda više nije potrebna.

Rad s raznim programskim jezicima — Kao što je navedeno u ranijem odjeljku, programer može razviti aplikaciju u raznim .Net programskim jezicima.

  1. Jezik — Prva razina je sam programski jezik; najčešći su VB.Net i C#.
  2. kompajler — Postoji zaseban kompajler za svaki programski jezik. Dakle, u osnovi VB.Net jezika postojat će zaseban VB.Net kompajler. Slično tome, za C# imat ćete još jedan kompajler.
  3. Zajedničko vrijeme izvršavanja jezika — Ovo je posljednji sloj u .Netu, koji se koristi za pokretanje .Net programa razvijenog u bilo kojem programski jezikSljedeći kompajler šalje program CLR sloju za pokretanje .Net aplikacije.

.NET komponente

2. Razredna knjižnica

.NET Framework uključuje skup standardnih biblioteka klasa. Knjižnica klasa zbirka je metoda i funkcija koje se mogu koristiti za temeljnu svrhu.

Na primjer, postoji biblioteka klasa s metodama za rukovanje svim operacijama na razini datoteke. Dakle, postoji metoda koja se može koristiti za čitanje teksta iz datoteke. Slično tome, postoji metoda za pisanje teksta u datoteku.

Većina metoda je podijeljena ili na System.* ili Microsoft.* imenski prostori. (Zvjezdica * samo znači referencu na sve metode koje spadaju pod sustav ili Microsoft imenski prostor.)

Imenski prostor je logička podjela metoda koja grupira povezane klase pod jednim imenom.

3. Jezici

Vrste aplikacija koje se mogu izraditi u .Net frameworku grubo su klasificirane u sljedeće kategorije.

WinForms — Ovo se koristi za razvojping Aplikacije temeljene na obrascima, koje bi se pokretale na računalu krajnjeg korisnika. Notepad je primjer klijentske aplikacije.

ASP.Net — Ovo se koristi za razvojping web-aplikacije, koje su napravljene za pokretanje u bilo kojem pregledniku kao što su Internet Explorer, Chrome ili Firefox.

  • Web aplikacija bi se obrađivala na poslužitelju na kojem bi bio instaliran Internet Information Services.
  • Internet Information Services ili IIS je Microsoft komponenta koja se koristi za izvršavanje Asp.Net prijava.
  • Rezultat izvršenja zatim se šalje klijentskim strojevima, a izlaz se prikazuje u pregledniku.

ADO.Net — Ova se tehnologija koristi za razvoj aplikacija za interakciju s bazama podataka kao što su Oracle or Microsoft SQL Poslužitelja.

Microsoft uvijek osigurava da su .Net okviri u skladu sa svim podržanim Windows operativni sustavi.

Načelo dizajna .Net Frameworka

Sljedeći principi dizajna čine .Net framework vrlo relevantnim za stvaranje .Net aplikacija.

1) Interoperabilnost — .Net framework pruža mnogo unatrag podrške. Pretpostavimo da imate aplikaciju izgrađenu na starija verzija .Net frameworka, recimo 2.0. Pokretanje iste aplikacije na računalu s višom verzijom, recimo 3.5, i dalje bi radilo. To je zato što sa svakim izdanjem, Microsoft osigurava da se starije verzije okvira dobro slažu s najnovijom verzijom.

2) prenosivost — Aplikacije izgrađene na .Net frameworku mogu se prilagoditi za rad na bilo kojem Windows platforma. A sada u novije vrijeme, Microsoft također predviđa izradu Microsoft proizvodi rade na drugim platformama, kao što su iOS i Linux.

3) Sigurnost — .NET Framework ima dobar sigurnosni mehanizam. Ugrađeni sigurnosni mehanizam pomaže u validaciji i verifikaciji aplikacija. Svaka aplikacija može eksplicitno definirati svoj sigurnosni mehanizam. Svaki sigurnosni mehanizam koristi se za davanje korisniku pristupa kodu ili programu koji se izvršava.

4) Upravljanje memorijom — Common Language Runtime (CLR) obavlja sav posao upravljanje memorijom.Net framework ima sve mogućnosti vidjeti resurse koje ne koristi pokrenuti program. Zatim bi te resurse oslobodio u skladu s tim. To se radi putem programa pod nazivom "Garbage Collector" koji se pokreće kao dio .Net frameworka. Garbage Collector se pokreće u redovitim intervalima i provjerava koji se sistemski resursi ne koriste te ih u skladu s tim oslobađa.

5) Pojednostavljena implementacija — .Net framework također ima alate za pakiranje aplikacija izgrađenih na njemu. Ti se paketi zatim mogu distribuirati na klijentska računala, gdje se automatski instalira aplikacija.

Pitanja i odgovori

.NET Framework radi samo na Windows i sada je u načinu održavanja u verziji 4.8.1. Modern .NET, prije .NET Core, je višeplatformski, otvorenog koda i aktivno se razvija, što ga čini preporučenim izborom za nove projekte.

Common Language Runtime (CLR) je mehanizam koji izvršava upravljani kod, obrađuje memoriju i iznimke. Common Language Specification (CLS) je skup pravila kojih se pridržava svaki .NET jezik kako bi komponente napisane u različitim jezicima sigurno međusobno funkcionirale.

.NET Framework podržava nekoliko jezika koji se kompajliraju u zajednički međujezik. Najčešće korišteni su C# i VB.NET, s F# za funkcionalno programiranje. Svi dijele isto okruženje za izvođenje, biblioteku klasa i alate.

Ne. .NET Framework je Windows-samo. Za ciljanje Linuxa ili macOS Koristite moderni .NET, ranije .NET Core, koji je višeplatformski. Stariji Mono projekt je također pokretao dio .NET Framework koda na drugim operativnim sustavima.

Da. .NET Framework se može besplatno preuzeti i koristiti, a isporučuje se ugrađen u WindowsRazvojni alati kao što su Visual Studio Community i Visual Studio Code također su besplatni za pojedince, male timove i projekte otvorenog koda.

Da. Verzija 4.8.1 ostaje podržana kao Windows komponenta i prima sigurnosne i pouzdane popravke. Međutim Microsoft fokusira nove značajke na moderni .NET, tako da većina novih razvoja sada cilja na tu platformu umjesto na Framework.

Da. ML.NET vam omogućuje izravno treniranje i pokretanje modela strojnog učenja u C#, a ONNX Runtime izvršava prethodno trenirane modele dubokog učenja. Također možete pozivati ​​usluge umjetne inteligencije u oblaku, tako da .NET aplikacije dodaju inteligentne značajke bez napuštanja ekosustava.

Da. GitHub Copilot predlaže C# i VB.NET kod unutar Visual Studija i VS Code, klase scaffoldinga, metode i predlošci iz komentara. Tretirajte njegov izlaz kao prvu verziju i pregledajte ga, budući da generirani kod može propustiti rubne slučajeve ili konvencije projekta.

Sažmite ovu objavu uz: