.NET Framework

Софтверска платформа развијена од стране компаније Microsoft

Majkrosoft .NET Framework je softverska platforma koja može biti instalirana na računarima koje pokreće Microsoft Windows operativni sistem. On uključuje veliki broj gotovih biblioteka kodova za uobičajene probleme u programiranju i virtuelnu mašinu koja upravlja izvršavanjem programa pisanih specijalno za .NET Framework. .NET podržava više programskih jezika, na način koji omogućava interoperabilnost, pri čemu svaki jezik može biti napisan na drugom. Dostupan je na svim programskim jezicima koje .NET Framework obuhvata (VB.NET, C#...). Kako bi mogle da se pišu aplikacije nije samo dovoljno imati instaliran .NET Framework, potreban je i Microsoft SDK (engl. Microsoft Software Development Kit) i Visual Studio.

.NET Framework
Programer(i)Microsoft
Prvo izdanje13. februar 2002.
Stabilno izdanje
4.0.30319.1 (.NET 4.0) / 12. april 2010.
Operativni sistemMicrosoft Windows
Platforma.NET Framework
Veb-sajthttp://msdn.microsoft.com/netframework/

Bazne klase pružaju širok spektar mogućnosti, uključujući korisnički interfejs, pristup podacima, bazama, kriptografija, razvoj veb-aplikacija, numerički algoritmi i mrežne komunikacije. Biblioteke klasa se koriste od strane programera, koji ga kombinuju sa svojim kodom za izradu aplikacija.

Programi pisani za .NET Framework izvršavaju se u specifičnom softverskom okruženju. Naime, ovo okruženje je poznato kao Common Language Runtime (CLR). CLR obezbeđuje izgled virtuelne mašine aplikacije tako da programeri ne treba da razmatraju mogućnosti specifičnih procesora koji će izvršiti program. On takođe pruža druge važne usluge kao što su bezbednost, upravljanje memorijom a i rukovanje izuzecima. Biblioteke klasa (Framework Class Library) i CLR zajedno čine .NET Framework.

Verzija 3.0 je uključena sa operativnim sistemom Windows Server 2008 i Windows Vista. Verzija 3.5 je uključena sa Windows 7 operativnim sistemom. 12. aprila 2010, .NET Framework 4.0 je objavljen zajedno sa Visual Studio-om 2010.

.NET porodica takođe uključuje i dve verzije za mobilne uređaje. Sažeta verzija - .NET Compact Framework, je dostupna za Windows CE platforme, uključujući Windows Mobile uređaje kao što je smartphone.

Glavnica dizajna uredi

Interoperabilnost
Zato što je interakcija između novih i starih aplikacija obično potrebna, .NET obezbeđuje sredstva za pristup funkcionalnosti koja se implementira u programima koji se izvršavaju van .NET okruženja. Pristum COM komponentama predviđeno za "System.Runtime.InteropServices" i "System.EnterpriseServices" imenske prostore.
Common Runtime Engine
je komponenta virtuelne mašine .NET Framework-a. Svi .NET programi se izvršavaju pod nadzorom CLR-a, garantujući određene osobine i ponašanje u oblastim upravljanja memorijom, bezbodnosti i rukovanje izuzecima.
Jezička nezavisnost
.NET Framework uvodi zajednički tip sistema, ili CTS (engl. Common Type System). CTS specifikacija definiše sve moguće tipove podataka i programske konstrukcije koje podržava CLR. Zbog ove funkcije, .NET podržava razmenu tipova i objekta između biblioteka i aplikacija koji su napisani pomoću bilo kog .NET jezika.
Biblioteka baznih klasa
Biblioteka baznih klasa je biblioteka funkcija dostupnih svim programskim jezicima u okviru .NET Framework-a. Ova biblioteka obezbeđuje klase koje se mogu koristiti za I/O operacije, crtanje grafika, rad sa bazama podataka, manipulaciju XML dokumenata itd.
Pojednostavljena instalacija .NET Framework uključuje opcije i alatke koje pomažu upravljanje instalacije računarskog softvera kako bi se osiguralo da jedna instalacija ne ometa prethodno instalirani softver.
Bezbednost
.NET Framework nudi opšti sigurnosni model za sve aplikacije, kao što su npr. prekoračenja koja mogu biti iskorišćena od strane zlonamernog softvera.
Pokretnost
Dizajn .NET Framework-a omogućava da softver bude kompatibilan za više platformi.

Arhitektura uredi

Zajednička jezička infrastruktura (CLI) uredi

Svrha zajedničke jezičke infrastrukture tj. CLI-a (engl. Common Language Infrastructure) je da obezbedi jezički neutralnu platformu za razvoj aplikacija i njihovo izvršavanje, uključujući funkcije za rukovanje izuzecima, kolekcijama, sigurnost i interoperabilnost. Primenom osnovnih aspekata .NET Framework-a u okviru CLR-a, funkcionalnost neće biti vezana za jedan jezik, ali će biti dostupan drugim jezicima koje podržava .NET. Majkrosoft-ova implementacija CLI-a zove se CLR (engl. Common Language Runtime).

.NET asembler uredi

CIL kod se čuve u .NET asembleru. Kako je dogovoreno specifikacijom, asemblovan CIL kod se čuve u PE (Portable Executable) formatu, zajednički za Windows platformu za sve DLL i EXE fajlove. Sastoji se od jedne ili više datoteka, od kojih jedna mora da sadrži manifest, koja sadrži metapodatke za asemblovan kod. Kompletni naziv asemblovan koda sadrži ime fajla, verziju, kulturu, i javni ključ. Javni ključ (računarstvo) je jedinstven generisan broj kada se asemblovan kod kompajlira.

Metapodaci uredi

CIL sebe opisuje kroz .NET metapodatke. CLR proverava metapodatke da bi obezbedio da je ispravan metod pozvan. Metapodaci su obično generisani od strane jezičkih kompajlera. Programeri mogu da prave svoje metapodatke preko prilagođenih atributa. Metapodaci sadrže informacije o asemblovanom kodu.

Sigurnost uredi

.NET sadrži svoj sigurnostni mehanizam za dve osnovne opcije: zaštita pristupa kodu koja se zasniva se na dokazima koji su povezani sa određenim asemblovanim kodom; validacija i verifikacija. Zaštita pristupa kodu koristi dokaze da bi se utvrdile dozvole za pristup koda.

Kada je asemblovan kod učitan, CLR izvodi različite provere. Dva takva testa su validacija i verifikacija. Tokom validacije CLR proverava da li asemblovan kod sadrži ispravne metapodatke i CIL. Verifikacija nije tako tačna. Verifikacioni mehanizam proverava da li programski kod radi nešto što nije sigurno. Nesiguran kod može biti izvršen samo ako asemblovan kod sadrži 'skip verification' dozvolu.

Biblioteka baznih klasa uredi

.NET Framework obuhvata skup standardnih biblioteka klasa. Biblioteka baznih klasa je organizovana po imenskim prostorima. Ove biblioteke implementiraju veliki broj funkcija, kao što su I/O operacije, grafika, rad sa bazama podataka, XML dokumentima i dr. Biblioteka je dostupna svim CLI usklađenim jezicima.

Upravljanje memorijom uredi

.NET CLR oslobađa programere od tereta upravljanja memorijom. Dokle god postoji referenca na objekat, koji bi mogla biti direktna referenca na objekat, objekat se smatra da je u upotrebi CLR-a. Kada ne postoji referenca na objekat, a ona ne može biti korišćena, odbacuje se. Međutim, ona i dalje zadržava memoriju. .NET ,, đubretar,, (engl. Garbage collector) koji radi povremeno, na posebnoj niti od aplikacije, oslobađa tu memoriju od referenci.

Standardizacija i licenciranje uredi

Avgusta 2000, Majkrosoft, HP i Intel radili su zajedno da standardizuju CLI jezike i C# programski jezik. Do decembra 2001, oba jezika bila su ratifikovana po ECMA standardima (ECMA 334 i ECMA 335). Međunarodna organizacija za standardizaciju (ISO) je aprila 2003. standardizovala CLI jezike i C#.

Verzije uredi

Majkrosoft je počeo da razvija .NET Framework kasnih 90-ih godina pod imenom 'Windows servisi sledeće generacija' (engl. Next Generation Windows Services). Krajem 2000. godine dostupna je prva beta verzija .NET Framework-a 1.0.

Verzija Build Datum objavljivanja Visual Studio Садржан у Windows-у
1.0 1.0.3705.0 2002-02-13 Visual Studio .NET
1.1 1.1.4322.573 2003-04-24 Visual Studio .NET 2003 Windows Server 2003
2.0 2.0.50727.42 2005-11-07 Visual Studio 2005
3.0 3.0.4506.30 2006-11-06 Windows Vista, Windows Server 2008
3.5 3.5.21022.8 2007-11-19 Visual Studio 2008 Windows 7, Windows Server 2008 R2
4.0 4.0.30319.1 2010-04-12 Visual Studio 2010
4.5 4.5.50709.17929 2012-08-15 Visual Studio 2012 Windows 8, Windows Server 2012

.NET Framework 1.0 uredi

Verzija 1.0 prva verzija .NET Framework-a, objavljena 13. februara 2002. god i dostupna je za Windows 98, ME, NT 4.0, 2000 i XP. Podrška za ovu verziju nije dostupna od 10. jula 2007. god.

.NET Framework 1.1 uredi

Verzija 1.1 je prva velika nadogranja .NET Framework-a. Dostupna je u redistributabilnom paketu, objavljena je 3. aprila 2003. Deo je drugog verzije Visual Studio .NET (poznat kao Visual Studio .NET 2003). Ovo je prva verzija koja dolazi sa Windows operativnim sistemom. Podrška za verziju 1.1 na ne Windows Server 2003 operativnim sistemima nije dostupna od 14. oktobra 2008. god. Za .NET Framework 1.1 na Windows Server 2003 operativnom sistemu podrška će biti dostupna sve do 14. jula 2015. god. .NET 1.1 je zadnja dostupna verzija za Windows NT 4.0 operativni sistem.

Nove funkcije:

  • Ugrađena podrška za ASP.NET kontrole za prenosne uređaje. Ovo je pre bilo dostupna kao dodatak za .NET Framework;
  • Sigurnosne promene;
  • Ugrađena podrška za ODBC i Oracle baze podataka. Ovo je pre bilo dostupna kao dodatak za .NET Framework;
  • .NET Compact Framework - sažeta verzija za prenosne uređaje
  • Podrška za IPv6
  • Razne promene u API-ju

.NET Framework 2.0 uredi

Objavljeno sa Visual Studio 2005, Microsoft SQL Server 2005 i BizTalk 2006.

Nove funkcije:

  • Generičko programiranje;
  • Jezička podrška za generičko programiranje ugređna direktno u CLR;
  • Puna 64-bitna podrška za x64 i IA64 hardverske platforme;
  • Razne API promene;
  • Integracija sa SQL Server-om;
  • Poboljšane ASP.NET veb kontrole;
  • Nove kontrole za upravljanje podacima iz baze;
  • Nove opcije za ASP.NET, kao što su teme, master stranice itd.;
  • Membership provajder;
  • Parcijalne klase;
  • Nulabilni tipovi;
  • Anonimne metode;
  • Iteratori;
  • Tabele podataka.

.NET Framework 3.0 uredi

Verzija 3.0, prvobitno zvana WinFX, objavljena je 21. novembra 2006. Uključuje delove API-ja koji su delovi novijih Windows operativnih sistema. Dostupna je za Windows XP SP2 i Windows Server 2003 kao dodatak. Nema velikih arhitektualnih promena sa ovom verzijom. .NET Framework 3.0 koristi CLR iz verzije 2.0. Nema dostupnih sažetih isdanja za ovu verziju.

Nove funkcije:

.NET Framework 3.5 uredi

Verzija 3.5 .NET Framework-a objavljena je 19. novembra 2007, ali nije uključena sa operativnim sistemom Windows Server 2009. Kao i verzija 3.0, verzija 3.5 koristi CLR verzije 2.0. Ova verzija instalira .NET Framework 2.0 SP1 i .NET Framework 3.0 SP1, koji dodaju neke metode i osobine biblioteci baznih klasa kao što je LINQ. Ove promene ne utiču na aplikacije napisane na verziju za 2.0.

Nove funkcije:

Servisni paket 1 uredi

Servisni paket 1 objavljen je 11. avgusta 2008. Ova verzija dodaje nove servise za upravljanje podacima

.NET Framework 3.5 SP1 Client Profile uredi

Verzija koja je 28MB manja od pune verzije. Ova verzija sadrži samo funkcije koje se najčešće koriste.

.NET Framework 4.0 uredi

Majkrosoft je najavio verziju 4.0 29. septembra 2008. Konačna verzija objavljena je 12. aprila 2010.

Vidi još uredi

ASP.NET

Spošaljnje veze uredi