Programování

Co je .NET Framework? Odpověď společnosti Microsoft na prostředí Java

Co je .NET Framework? Definováno .NET

 .NET je rámec pro vývoj softwaru - a doprovodný ekosystém nástrojů, jazyků a runtime - vytvořený společností Microsoft za účelem usnadnění vývoje aplikací na různých platformách, od stolních počítačů až po mobilní zařízení. Ačkoli .NET (vyslovuje se tečkovaná síť, a někdy psaný jako .Net) byl původně svázán s proprietárním operačním systémem a platformami Microsoftu, když byl spuštěn na počátku 00. let, aplikace .NET nyní mohou být psány pro web, MacOS, iOS, Android, Linux a další - a .NET je formální standard a je oficiálně k dispozici jako otevřený zdroj.

Microsoft popisuje .NET jako „konzistentní objektově orientované programovací prostředí, ať už je objektový kód uložen a spuštěn lokálně, spuštěn lokálně, ale distribuován přes internet nebo vzdáleně.“ .NET si klade za cíl poskytovat bezpečné provádění kódu, poskytovat lepší výkon než interpretované jazyky a zajistit konzistentní vývojářské prostředí napříč širokou škálou aplikací. 

Hlavní součásti .NET Framework

Rozhraní .NET Framework existuje téměř 20 let a prošlo mnoha změnami, kdy byly komponenty během této doby zavedeny a později zastaralé. V tuto chvíli existují tři hlavní vrstvy pro .NET:

  • Standardní knihovna .NET zahrnuje komponenty, které vytvoří infrastrukturu pro téměř jakoukoli aplikaci, kterou byste napsali - třídy a typy, které jsou užitečné při provádění každodenních úkolů, jako je jednání s řetězci a primitivy, vytváření databázových připojení, provádění operací I / O atd. .
  • Volitelný modely aplikací obsahují instalační kód pro různé platformy, kde byste mohli nasadit svou aplikaci .NET. Existuje řada modelů aplikací pro aplikace Windows (dědictví úzké asociace .NET s neustále se vyvíjejícím vlajkovým operačním systémem Microsoftu) a pro další platformy: ASP.NET například pro webové aplikace a modely pro Mac a různé mobilní platformy.
  • The společná infrastruktura je základní vrstva komponent, která umožňuje skutečné provádění celého ekosystému v praxi, od překladačů přes jazyky až po běhové komponenty. Ty jsou zásadní pro pochopení toho, co .NET nabízí, proto se na ně v následujících částech podíváme podrobněji. 

Jak .NET Framework funguje

Hlavní součásti .NET Framework spolupracují, aby usnadnily proces psaní aplikací. Standardní modely knihoven a aplikací poskytují spoustu kódu, který za vás zvládne základní programovací úkoly, takže nemusíte znovu objevovat kolo s každou aplikací, kterou vytvoříte. O běžnou infrastrukturu se stará velká část nasazení těchto aplikací.

Kód napsaný v kterémkoli z jazyků .NET (více o tom za okamžik) je zkompilován do zprostředkujícího jazyka bytecode s názvem Common Intermediate Language, nebo CIL. Kód CIL není čitelný člověkem, ale lze jej přenášet napříč operačními systémy a platformami. CIL je poté znovu zkompilován modulem Common Language Runtime, nebo CLR. Implementace CLR jsou specifické pro platformu a kompilují kód CIL do strojově čitelného kódu, který lze spustit na platformě okamžiku. Různé verze CLR podporují kompilace just-in-time i předem.

V procesu vytváření místního strojově čitelného kódu CLR také spravuje mnoho funkcí aplikací na nízké úrovni, jako je sběr a odstraňování odpadků, což je zásadní pro výkon aplikace, ale pro vývojáře často zdlouhavé. Společně CIL a CLR tvoří infrastrukturu .NET Common Language Infrastructure (CLI a ano, víme, že všechny tyto zkratky jsou podobné a trochu matoucí).

To vše by mělo znít dobře každému, kdo pracuje s platformou Java, protože se řídí stejným základním paradigmatem - velké dostupné knihovny tříd, zprostředkovaný bajtkód a runtime specifický pro platformu, který automatizuje správu paměti, jsou všechny funkce obou nabídek. .NET byl vyvinut na konci 90. let, během počátečního rozkvětu Javy, a původně byl umístěn jako konkurent platformy Java Enterprise Edition; jazyk Java a C #, první a nejvýznamnější jazyk .NET, jsou odvozeny od jazyka C a jsou sémanticky podobné.

Jaké jsou .NET programovací jazyky?

C #, ohlášený s velkou slávou po spuštění .NET v roce 2000, je nejznámější a nejpoužívanější programovací jazyk .NET. Byl vyvinut interně společností Microsoft jako součást iniciativy .NET a většina tříd ve standardní knihovně .NET je napsána v C #. Jazyk je objektově orientovaný a je navržen tak, aby byl dostatečně podobný jazyku C, aby se vývojáři jazyka C, C ++, Java a JavaScriptu mohli rychle naučit a používat.

Microsoft v současné době také dává do popředí dva další programovací jazyky, které lze použít k zápisu pro .NET Framework. Jedním z nich je F #, funkční programovací jazyk, který je součástí jazykové rodiny ML a který má nakonec kořeny v LISP; druhým je Visual Basic, ctihodný a snadno se naučitelný programovací jazyk společnosti Microsoft pro vývoj aplikací typu klient-server. Ale to je jen špička ledovce: Protože .NET se skládá z otevřených standardů, může kdokoli napsat jazyk, který se kompiluje do bytecode CIL a může být spuštěn CLR. Wikipedia má seznam více než 20 aktuálně udržovaných projektů v jazyce CLI. Téměř všechny představují .NET porty stávajících jazyků, od Pascalu přes JavaScript až po COBOL.

Skutečnost, že tato rozmanitost jazyků může koexistovat v rámci .NET Framework, je jednou ze silných stránek platformy. Protože se celý kód zkompiluje do bytecode CIL, .NET opravdu nezajímá, ve kterém jazyce jej napíšete; můžete si vybrat jazyk na základě svých vlastních preferencí, různých silných a slabých stránek každého jazyka nebo různých aspektů .NET Framework, ke kterým vám každý jazyk poskytuje přístup (zde jsou některé varianty). Jak již bylo uvedeno, většina standardní knihovny byla napsána v C #, ale to vám nezabrání v přístupu k těmto třídám z kódu napsaného v jiných jazycích CLI. Ve skutečnosti komponenty napsané v různých jazycích CLI mohou volně spolupracovat napříč aplikací .NET.

.NET Framework versus .NET Core (a dále) 

Všimnete si, že v tomto článku používáme „.NET Framework“ k obecnému odkazování na platformu. Přesně řečeno, to není správné: Microsoft používá tuto frázi k označení své vlastní dlouhodobé implementace .NET Standard, která se zaměřuje výhradně na Windows. V minulosti existovaly i jiné implementace .NET; jednou z nejznámějších je Mono, open source implementace, která byla poprvé vydána v roce 2004 a umožnila spouštět aplikace .NET v systému Linux. (Vydání vedlo k určité kontroverzi, protože to byla doba, kdy mezi Microsoftem a komunitou open source stále existovala dost špatná krev.) Mono nyní tvoří základ platformy Xamarin, což umožňuje stavět .NET aplikace pro iOS, Android a MacOS i Linux. Xamarin začal život jako mozek zakladatelů Mono, ale společnost, kterou založili na podporu projektu, nakonec získala společnost Microsoft.

Třetí hlavní implementací .NET od Microsoftu je .NET Core, multiplatformní implementace .NET Standard, která byla vydána jako otevřený zdroj v roce 2016. .NET Core byl postaven čerstvý od základu a odstranil část krutosti, která se nahromadila v .NET Framework, i když také postrádal celou řadu funkcí. Mít více verzí .NET Standard, vše od Microsoftu, je pochopitelně poněkud matoucí. V roce 2017 se publicista Simon Bisson potýkal s otázkou, která implementace by se měla použít v jakých kontextech.

Ale to se všechno změní v ne tak vzdálené budoucnosti. V listopadu 2020 hodlá Microsoft sjednotit tři implementace .NET jako .NET 5. .NET 5 bude v podstatě další generací .NET Core, do které bude zahrnuto mnoho komponent z .NET Framework a Xamarin. Řada rozhraní .NET Framework API však cestu na .NET 5. neudělá. Cílem tohoto kroku je zjednodušit věci vývojářům a zaměřit vlastní úsilí společnosti Microsoft.

Jaký .NET Framework mám?

V době psaní tohoto článku je to ale více než rok volna. Aktuální nejnovější verze .NET Framework je 4.8; aktuální verze .NET Core je 3.0. Microsoft má stránku s pokyny, jak zjistit, jaká verze .NET Framework je aktuálně nainstalována ve vašem počítači.

Na co se .NET používá? 

Takže vše, co vám dává hodně co a jak; ale nad čím se možná stále divíte proč. Proč používat .NET Framework? Blog Altexsoft obsahuje dobrý rozpis výhod a nevýhod .NET. Pozitivní je, že .NET poskytuje objektově orientovaný model programování se spolehlivým a jednoduchým systémem ukládání do mezipaměti a vyspělým IDE a umožňuje flexibilní nasazení a snadnou údržbu. Meziplatformová povaha .NET navíc umožňuje přenos kódu do mnoha různých druhů koncových bodů. .NET je nejvhodnější, pokud vytváříte multiplatformní aplikace na podnikových infrastrukturách, které chcete škálovat, aniž byste je museli kompletně přepracovávat.

Stáhněte si .NET Framework

Jste připraveni začít experimentovat s .NET? Stáhněte si .NET Framework (pro Windows) nebo .NET Core (pro Windows, Linux nebo MacOS) z webu společnosti Microsoft; K dispozici jsou také obrázky Dockeru. Xamarin pro iOS a Android najdete na GitHubu. Šťastné objevování!

$config[zx-auto] not found$config[zx-overlay] not found