Architektura .NET Framework rozebrána do podrobna

Tagy:  DOTNET, .NET, Framework, .NET Framework, NET, DOT.NET, C#, J#, F#, VB, C++, Microsoft Visual Studio.NET, .NET Enterprise Servers, Microsoft Windows.NET, architektura, .net freamwork, aplikace

Sponzorované odkazy

Architektura .NET Framework rozebrána do podrobna

Cílem tohoto článku je Vám upřesnit, co je to vlastně .NET Framework a hlavně jak tato architektura pracuje. .NET Framework je součástí rozsáhlé architektury .NET, která se dále skládá z Microsoft Visual Studio.NET, .NET Enterprise Servers a Microsoft Windows.NET. V této kapitole se podíváme na .NET Framework a zodpovíme si pár otázek týkající se této architektury. Pro představu si zde uvedeme pár otázek, na které se budeme snažit odpovědět. Například, jak vypadá struktura .NET Framework? Jaké technologie obsahuje .NET Framework?

Co je to vlastně .NET Framework?

NET. Framework je rozsáhlá softwarová platforma, která je převážně určena pro vývoj různých druhů aplikací. Pomocí této platformy můžeme vytvářet klasické aplikace pro Windows, ale také webové aplikace či dokonce aplikace pro mobilní zařízení apod.

Struktura .NET Framework

Struktura je tvořena třemi základními vrstvami. První, známější vrstva se skládá z tzv. Common Language Runtime (pozn. Programovací jazyky) a Basic Class Library. Do prvně zminované části spadají programovací jazyky jako například C#, J#, F#, VB, C++ apod. Tato část slouží k běhu systému a skládá se z webových služeb a uživatelského rozhraní. V druhé části frameworku najdeme společný běhový systém CLR, ve kterém se dále nachází správa paměti, společný typový systém a řízení života objektů. Dalším ze základních vrstev je operační systém a v neposlední řadě se zde také nachází hardware počítače.

Obrázek I. Schéma struktury .NET FrameworkObrázek I. Schéma struktury .NET Framework

Common Language Runtime

Pod tímto složitým názvem si můžete představit nějaký virtuální stroj, ve kterém pracují běhové funkce této platformy a programovací jazyky zde mají k dispozici všechny knihovny tříd systému, se kterými jednodušeji pracují. Tento systém obsahuje obdobu strojového kódu, který se nazývá Microsoft Intermediate Language. Kód není kompilován přímo do strojového kódu, ale do MSIL kódu, což znamená omezení výkonnosti prostředí. Tímto nedostatkem jsou vynahrazovány mnohé výhody, jako například řízený kód, jednotný typový systém či správa paměti.

Mezi největší výhody této architektury patří schopnost vývoje aplikací v mnoha různých programovacích jazycích. Tato vlastnost se nazývá tzv. Cross-language interoperability, což znamená možnost spolupráce mezi jednotlivými jazyky.

Basic Class Library

Všechny programovací jazyky, které využívají této knihovny, mají teoreticky naprosto stejné možnosti. Na obrázku č.2 můžete vidět schéma struktury BCL.

Obrázek II. Schéma struktury BCLObrázek II. Schéma struktury BCL

Microsoft Intermediate Language

Jazyk MSIL, který je velice podobný assembleru, byl vytvořen tvůrci programovacích jazyků za účelem vyvíjení nových jazyiků pro platformu .NET. Při kompilaci programu v systému .NET vezme překladač na vstup kód příslušného jazyka a výstupem bude práce aplikace v MSIL. Poté nám CLR zajístí, že při spuštění aplikace se program v MSIL sám přeloží pomocí tzv. Just in time kompileru do základního strojového kódu. Na následujícím schématu můžete vidět průběh kompilace. Na začátku je nějaký zdrojový kód napsaný v jakýmkoliv programovacím jazyce. Následně se zkompiluje MSIL kód. Poté se pomoci JIT kompiléru vytvoří nativní kód.

Obrázek III. Schéma principu kompilace JITObrázek III. Schéma principu kompilace JIT

Just in time

JIT slouží k dynamickému překladu z MSIL kódu do nativního. Je to technika sloužící k vylepšení provozní výkonnosti počítačového programu. Rozeznáváme dva typy kompilací. Prvním typem je tzv. interpretovaná kompilace a druhá je statická (JIT) kompilace. Interpretovaný kód je přeložen z vysokoúrovňového jazyka do strojového kódu průběžně při každém spuštění. Statická kompilace vyžaduje tento překlad pouze jednou při prvním spuštění. JIT navazuje na dvě myšlenky v runtime prostředí. Na binární a dynamickou kompilaci. Několik moderních runtime prostředí, jako je například Microsoft .NET Framework a také většina implementací Javy, spoléhají na JIT kompilaci pro vysokorychlostní spuštění kódu.

Součástí .NET Frameworku

APS.NET

  • tato technologie slouží pro vývoj webových aplikací

Windows Communication Foundation

  • tato technologie je využívána pro vzájemnou komunikaci mezi komunikačními protokoly a technologiemi

Windows Presentation Foundation

  • pro vytváření hardwarově akcelerovaného uživatelského rozhraní

Windows Sync Framework

  • synchronizace dat

Windows Workflow Foundation

  • technologie pro definování heterogenních sekvenčních procesů

Windows CardSpace

  • obsahuje implementaci standardu Information Cards

LINQ

  • slouží k objektovému přístupu k datům v databázi, XML a objektech, které mohou implementovat rozhraní IEnumerable

Aktuálně je k dispozici 6 vydaných verzí rozhraní .NET Framework

  • .NET Framework 4.0 (r. 2010, zatím nejnovější verze C# 4, VB.NET 10.0 a vývojového prostředí Visual Studio 2010)
  • .NET Framework 3.5 (r. 2007, update jazyku C# 2.0 na C# 3.0 a jazyku VB.NET na 9.0)
  • .NET Framework 3.0 (r. 2007, vývojové prostředí Visual Studio 2005 a 2008)
  • .NET Framework 2.0 (r. 2005, vývoj nových verzí jazyků C# 2.0 a VB.NET 8.0)
  • .NET Framework 1.1 (r. 2003, vývojové prostředí Visual Studio 2003)
  • .NET Framework 1.0 (r. 2002, vývoj programovacího jazyku C# 1.0)

Mezi nejnovější verze patří právě .NET Framework 4.0. Na rozdíl od minulých verzí Frameworků 3.0 a 3.5 není jen inkrementálním updatem, ale zcela novou funkční verzí. K jednotlivým verzím .NET Framework, C# a Visual Studio 2010 mám velice kladný vztah.

V počítači může být nainstalováno několik verzí rozhraní .NET Framework, aniž by docházelo ke kolizi systému.

Závěrem

Věřím, že Vás tento článek zaujal a přesvědčil Vás o kvalitách architektury .NET. Z vlastní zkušenosti vím, že tato architektura je velice nadstandardní a využívaná v IT oblasti. V letošním roce jsem se úzce podílel na vývoji jednoduchých počítačových her prostřednictvím této softwarové platformy. .NET Framework Vám můžu vřele doporučit.

Výhody:

  • snadnější instalace komerčních aplikací
  • snadnější použití aplikací s instalací typu No-Touch Deployment

Nevýhody:

  • ztráta výkonu oproti nativním aplikacím

Stáhnout .NET Framework z Edownload.cz

Článek Architektura .NET Framework rozebrána do podrobna byl publikován 1. července 2010 v 06.00 v rubrice Technologie. Autorem článku je Zbyněk Maier. Pro diskusi slouží komentáře (0).

Prosím čekejte ...
Prosím čekejte ...
Prosím čekejte ...