.NET Framework | |
.NET Framework se komponente
| |
Ontwikkelaar | Microsoft |
---|---|
Aanvanklike vrystelling | 13 Februarie 2002 |
Nuutste weergawe | 4.6.1 (4.6.01055.00/ 30 November 2015[1] |
Bedryfstelsel | Windows 98 of later, Windows NT 4.0 of later |
Kategorie | Framework |
Lisensie | verskeie |
Webblad | microsoft.com/net |
Die Microsoft .NET Framework is 'n sagtewarekomponent wat deel vorm van die Microsoft Windows bedryfstelsel. Dit bestaan uit 'n groot versameling van voorafgeskrewe oplossings tot algemene programvereistes en bestuur die uitvoer van programme wat spesifieke ontwikkel is vir die raamwerk. Die .NET Framework is een van Microsoft se kernaanbiedinge en is die gedagte is dat dit gebruik sal word deur die meeste nuwe toepassings wat vir die Windows-platform ontwikkel word.
Die voorafgeskrewe oplossings wat deel vorm van die raamwerk se Basis klasversameling dek 'n wye verskeidenheid programmeerbehoeftes op gebiede wat onder ander insluit: gebruikerskoppelvlak, datatoegang, Databasisverbinding, kriptografie, webtoepassing-ontwikkeling, numeriese algoritmes en netwerkkommunikasie. Die klasversameling word deur programmeerders saam met hulle eie bronkode gebruik om toepassings te skep.
Programme wat geskryf is vir die .NET Framework loop in 'n sagtewareomgewing wat die program se vereistes tydens uitvoering beheer. Hierdie omgewing wat ook deel is van die .NET Framework, staan bekend as die Common Language Runtime (CLR). Die CLR verskaf 'n virtuele masjien vir toepassings sodat programmeerders nie die vermoë van 'n spesifieke SVE in gedagte hoef te hou nie. Die CLR verskaf ook ander belangrike dienste soos sekuriteitsmeganismes, geheuebestuur en fouthantering. Die klasversameling en die CLR maak saam die .NET Framework uit.
Die .NET Framework word ingesluit by Windows Server 2003, Windows Server 2008 en Windows Vista en kan op die meeste ouer weergawes van Windows geïnstalleer word indien nodig.
Microsoft .NET Framework is ontwerp met verskeie doelwitte voor oë:
Die kern van die .NET Framework lê in wese by die Common Language Infrastructure of CLI. Die doel van die CLI is om 'n neutrale platform ten opsigte van rekenaartale daar te stel vir die ontwikkeling van toepassings, die uitvoer van programme insluite funksies wat fouthantering, geheuebestuur, sekuriteit en versoenbaarheid in die hand werk. Microsoft se implementering van die CLI word die Common Language Runtime of CLR genoem.
Die CLR bestaan uit vier primêre onderdele:
Die intermediêre CIL-kode word in .NET assemblies gehuisves. Die spesifikasie skryf voor dat assemblies in die Portable Execution-formaat gestoor word, wat dieselfde is vir alle DLL en EXE lêers op die Windows bedryfstelsel. Die assembly bestaan uit een of meer lêers maar elkeen moet die manifes bevat wat die metadata vir die assembly bevat. Die volledige naam van die assembly bevat sy eenvoudige teksnaam, weergawe nommer, kultuur en publiekesleutel datagreep. Die publiekesleutel datagreep bevat 'n unieke hash wat geskep word wanneer die assembly gekompileer word; dus sal twee assemblies met dieselfde publieke sleutel datagreep gewaarborg wees om identies te wees. 'n Privaatsleutel kan ook gespesifiseer word wat slegs aan die skepper van die assembly bekend is en kan gebruik word om te waarborg dat die assembly afkomstig is vanaf dieselfde skrywer wanneer 'n nuwe weergawe van die assembly saamgestel word.
Die CIL is selbeskrywend deur .NET metadata. Die CLR gaan die metadata na om te verseker dat die korrekte metode geroep word. Metadata word gewoonlik geskep deur die taalsamestellers (compilers) maar ontwikkelaars kan hulle eie metadata skep deur hul eie kenmerke (attributes) te definieer. Metadata bevat ook inligting oor die assembly. Metadata word ook gebruik om die reflektiewe programmeervermoëns van die .NET Framework te implementeer.
Die Basis klasversameling (Base Class Library of BCL) is 'n versameling van klasse wat aan alle tale beskikbaar is deur die .NET Framework. Die BCL verskaf klasse wat 'n aantal algemene funksies verpak soos die lees- en skryf van lêers, verbeelding van grafika, databasisinteraksie, manipulasie van XML-dokumente ensovoorts.
.NET het sy eie sekuriteitsmeganisme wat twee algemene kenmerke insluit: Code Access Security (CAS) asook kontrole en geldigheidsversekering. Code Access Security is gebaseer op bewyse wat verbind word met 'n spesifieke assembly. Die bewyse is tipies die bron van die assembly. Code Access Security gebruik bewyse om die toestemming wat aan die kode verleen word vas te stel. Ander kode kan vereis dat die kode wat dit aanvra 'n spesifieke toestemming moet hê. Die aanvraag veroorsaak dat die CLR 'n call stack walk uitvoer, elke assembly word nagegaan om te verseker dat elke metode in die call stack die vereiste toestemming het en indien die toestemming nie verleen is nie word 'n sekuriteitsfout gegenereer.
Wanneer 'n assembly gelaai word, onderneem die CLR 'n verskeidenheid toetse. Twee sulke toetse is geldigheidsversekering en kontrolering. Tydens die geldigheidsversekeringstoets maak die CLR seker dat die assembly geldige metadata en CIL bevat en maak seker dat die interne tabelle korrek is. Kontrole is nie so noukeurig nie. Die kontrolemeganisme gaan na om te sien of die kode enigiets doen wat onveilig is. Die algoritme wat gebruik word is nogal konserwatief en kan soms veroorsaak dat veilige kode afgekeur word. Onveilige kode sal slegs uitgevoer word as die assembly die skip verification toestemming gegee is, wat gewoonlik beteken dat die kode op 'n plaaslike masjien geïnstalleer is.