.NET Framework | |
---|---|
| |
Typ | rámec |
Vývojář | Microsoft |
Operační systém | Okna |
První vydání | 13. února 2002 |
Hardwarová platforma | Microsoft Windows |
Nejnovější verze | 4.8 [1] ( 18. dubna 2019 ) |
Čitelné formáty souborů | Šablona Microsoft .NET XML Resource (UTF-8) [d] , Microsoft .NET XML Resource template [d] , .NET Framework Resource data [d] , .NET Micro Framework TinyFont [d] a .NET Micro Framework PE spustitelný soubor [ d] |
Vygenerované formáty souborů | Šablona Microsoft .NET XML Resource (UTF-8) [d] , Microsoft .NET XML Resource template [d] , .NET Framework Resource data [d] , .NET Micro Framework TinyFont [d] a .NET Micro Framework PE spustitelný soubor [ d] |
Stát | Vývoj byl ukončen ve prospěch .NET |
Licence | M.I.T. [2] |
webová stránka | dotnet.microsoft.com |
Mediální soubory na Wikimedia Commons |
.NET Framework je softwarová platforma vydaná společností Microsoft v roce 2002 . Základem platformy je Common Language Runtime (CLR) , který je vhodný pro různé programovací jazyky. Funkčnost CLR je dostupná v jakémkoli programovacím jazyce, který používá tento rámec. .NET Framework je v současné době vyvíjen jako .NET .
Předpokládá se, že .NET Framework je odpovědí Microsoftu na tehdy populární platformu Java od Sun Microsystems (nyní ve vlastnictví Oracle ).
Ačkoli je .NET Framework patentovaná technologie společnosti Microsoft Corporation a je oficiálně navrženo pro práci s operačními systémy rodiny Windows , existují nezávislé projekty (především Mono a Portable.NET ), které vám umožňují spouštět programy .NET Framework na některých jiných operační systémy.
Vývoj platformy začal v roce 1999 [3] . Vývoj nové technologie byl oficiálně oznámen 13. ledna 2000, v den, kdy Bill Gates oficiálně oznámil převedení postu šéfa Microsoftu na Steva Ballmera . V tento den oznámilo vedení korporace novou strategii společnosti nazvanou Next Generation Windows Services (NGWS, „další generace služeb Windows“). Novou strategií bylo zkombinovat stávající a budoucí vývoj společnosti Microsoft do jediné sady, která uživatelům umožní pracovat s World Wide Web z bezdrátových zařízení s přístupem k internetu , stejně jako ze stolních počítačů [4] .
Během tiskové konference toho dne Ballmer řekl, že navzdory obrovským možnostem domácích počítačů korporace považuje za důležité zajistit, aby služby nové generace fungovaly i na jiných zařízeních než PC. Pokud jde o Gatese, Anne Thomas Maines, analytička Patricia Seybold Group, po analýze jeho slov uvedla, že společnosti by prospělo, kdyby se přestala soustředit výhradně na stacionární počítače a přesunula se k vývoji pro mobilní zařízení. Gates podle jejího názoru vyhlásil kurz pro přechod do nové éry výpočetní techniky, který nebude pevně svázán s Windows [4] .
Kvůli malým zdrojům energie mobilních zařízení musí být ukládání a přenos aplikací prováděn servery, zatímco v té době byly téměř všechny uživatelské informace a software uloženy lokálně na stolních počítačích. V té době měla myšlenka přechodu na „server-centric“ model silnou podporu mezi lídry největších IT společností. Tak například Scott McNeely, šéf Sun Microsystems , oznámil akvizici společnosti zabývající se kancelářským softwarem , která soutěžila s Microsoft Office , aby mohla přejít na server-klientský software [4] .
Microsoft měl v té době mnoho důvodů pro přechod na novou strategii. Společnost dominovala na trhu s operačními systémy a webovými prohlížeči , měla velké množství vývoje internetového softwaru, včetně portálů MSN a WebTV, a měla podíl ve společnostech zabývajících se pronájmem internetového softwaru [4] . Kromě toho, jak později připomněl Anders Hejlsberg , společnost měla mnoho různých (a často vzájemně nekompatibilních) programovacích prostředí a technologií, protože vývoj nástrojů pro programátory byl jazykově orientovaný, to znamená, že Visual Basic měl svou vlastní sadu aplikací. a C++ měl svůj vlastní. Jedním z cílů vývoje nové platformy proto bylo spojit všechny nejúspěšnější vývojové trendy v rámci jediné platformy a sjednotit je. Kromě toho bylo úkolem sledovat všechny aktuální trendy v oblasti programování v té době. Nová platforma musela například přímo podporovat objektovou orientaci, typovou bezpečnost, garbage collection a strukturované zpracování výjimek. Korporace navíc musela poskytnout odpověď na vznikající platformu Java od Sun Microsystems [5] .
Podle tehdy zveřejněných plánů zahrnovaly vývoj nové verze operačního systému a také nové verze vývojového prostředí pro programátory, které by bylo určeno pro vývoj webových aplikací. Kromě toho měl být na novou platformu převeden Microsoft Office. Paul Moritz, viceprezident společnosti Microsoft, uvedl Passport jako příklad budoucí služby pro novou strategii, což byla elektronická peněženka, která uživatelům umožňovala po registraci provádět online nákupy, aniž by museli zadávat čísla kreditních karet a osobní údaje na různých stránky. Na téže konferenci Ballmer uvedl příklad implementace nové strategie, která pacientům umožní řešit řadu svých problémů prostřednictvím internetu, od čtení jejich zdravotní dokumentace až po placení lékařských účtů od lékařů [4] .
Podle Moritze posloužil vývoj Windows DNA 2000 , představený v září 1999, jako základ pro novou strategii společnosti . Windows DNA 2000 kombinuje novou verzi SQL Server DBMS a nové softwarové nástroje pro usnadnění vývoje webových aplikací [4] .
V únoru 2000 Steve Ballmer na konferenci VBITS 2000 v San Franciscu hovořil o nové verzi Visual Basic a Visual C++ , které byly do té doby základními kameny Visual Studia . Vzhledem k tomu, že harmonogram vydávání verzí Visual Studio do té doby byl znatelně narušen (Visual Studio 6.0 bylo vydáno v září 1998 a předtím docházelo k vydávání nástrojů v něm obsažených každoročně), vzbudily informace o inovacích značný zájem [6] (nepřístupný odkaz od 02 -12-2017 [1796 dní]) .
Ballmer zároveň představil koncept strategie NGWS (jejíž pracovní název Ballmer považoval za velmi hrozný a slíbil, že jej do vydání změní) v podobě jakési softwarové platformy, která umožní uživatelům Windows přístup různé webové služby. K tomu Microsoft očekával, že výrazně změní platformu Windows. Prvním krokem k nové verzi platformy byl Windows 2000 , který Ballmer nazval základem „uživatelské zkušenosti s internetem“. Windows 2000 byl součástí technologie Windows Distributed Internet Applications (DNA) 2000, která v té době zavedla nejnovější třívrstvé schéma programovacího modelu, poprvé představené s Windows NT 4.0 [6] .
V té době se toto schéma skládalo z klientské části (Windows nebo webová aplikace), střední vrstvy založené na komponentách COM + a databáze (obvykle SQL Server ). NGWS musela změnit způsob, jakým byla vyvíjena DNA Windows, aby jako standard pro výměnu dat používala výhradně XML . XML bylo vybráno, protože šlo o evoluci značkovacího jazyka HTML , který se stal hlavním značkovacím jazykem na World Wide Web, a také poskytoval pohodlný způsob popisu dat. V modelu NGWS musela každá část třívrstvé struktury (klientská aplikace, middleware a databáze) komunikovat se zbytkem pomocí balíčků XML. Aby bylo snazší vyvíjet kód pomocí XML, měla nová verze Visual Studia generovat kód XML a osvobodit vývojáře od nutnosti ručního psaní kódu XML [6] .
Například se plánovalo, že vývojáři budou moci napsat celý web elektronického obchodu v nové verzi Visual Basic a díky tomu, že informace budou vyměňovány pomocí XML, budou moci vývojáři vytvářet klientské aplikace, které pracovat na Linuxu , Solaris a Mac OS . To znamená, že pro vzájemnou interakci aplikace nebo operačního systému byla z jejich strany potřeba pouze podpora standardu [6] .
K demonstraci svého záměru Microsoft spustil web Passport , na který si uživatel mohl zdarma pořídit elektronickou peněženku (eWallet), která zjednodušila proces nakupování v internetových obchodech [6] .
22. června 2000 na fóru 2000 konaném v Redmondu Bill Gates oznámil přejmenování platformy na Microsoft.Net a prohlásil, že „strategie korporace bude zcela určena platformou .Net“ a všemi produkty Microsoftu. bude nakonec přepsán na podporu této platformy. Také podle něj Microsoft během následujících dvou let plánoval vydat novou verzi svého OS (který se původně jmenoval Windows.Net, později byl implementován jako Microsoft Singularity ) a vývojový kit, který se měl jmenovat Visual Studio.Net. Kromě toho se změny měly dotknout serverových aplikací - Microsoft SQL Server, Exchange, BizTalk a balík Microsoft Office měl být převeden na Office.Net [7] .
Gatesův projev na červnovém fóru 2000 byl načasován tak, aby se shodoval se zveřejněním dokumentu s názvem Microsoft .NET: Realizing the Next Generation Internet ( anglicky Microsoft .NET: Creating the Next Generation Internet ) na oficiálních stránkách Microsoftu. Poskytla obecný přehled o nové platformě a samotný vzhled nové platformy byl popsán jako jakási „revoluce“. Tento dokument jako první popsal (i když stručně) technickou implementaci platformy. Takže místo ručního psaní velkého množství kódu bylo vývojářům nabídnuto sestavení svých aplikací z hotových bloků, což mělo urychlit vývoj softwaru. Mezi tyto „stavební bloky“ patřily zejména následující moduly:
11. července 2000 byla na PDC na Floridě představena předběžná verze rozhraní .NET Framework , která byla prezentována jako „součást platformy .NET“ [9] .
12. listopadu 2000 zveřejnil Microsoft na svém webu .NET Framework SDK Beta 1 obsahující vše, co potřebujete, abyste mohli začít s novou platformou. Vzhledem k „vlhkosti“ programu jej však společnost doporučila instalovat pouze na počítače určené výhradně pro testy. Tato sada SDK mohla fungovat pouze na Windows 2000 , Windows NT 4.0 (který obsahuje NTOP pro podporu ASP.NET), Windows 98 a Windows Me a stabilní provoz s nedávno vydaným SQL Serverem 2000 nebyl vůbec zaručen [10] . Tato verze obsahovala obrovské množství chyb, od problémů při instalaci až po neúplnou podporu nativních jmenných prostorů v závislosti na verzi Windows [11] .
Hlavní myšlenkou při vývoji .NET Frameworku bylo zajistit svobodu vývojáře tím, že mu poskytne možnost vytvářet aplikace různých typů, které mohou běžet na různých typech zařízení a v různých prostředích [12] .
Druhým principem bylo zaměření na systémy běžící pod operačními systémy rodiny Microsoft Windows [12] .
Program .NET Framework napsaný v jakémkoli podporovaném programovacím jazyce je nejprve přeložen kompilátorem do bajtového kódu Common Intermediate Language (CIL) (dříve známého jako Microsoft Intermediate Language, MSIL) , který je společný pro .NET. V podmínkách .NET se získá sestavení , eng. montáž . Kód je poté buď spuštěn virtuálním strojem Common Language Runtime (CLR) nebo přeložen obslužným programem NGen.exe do spustitelného kódu pro konkrétní cílový procesor. Upřednostňuje se použití virtuálního stroje, protože to vývojářům ušetří starosti s funkcemi hardwaru. V případě použití virtuálního stroje CLR převádí kompilátor JIT v něm zabudovaný „za chodu“ (just in time) mezilehlý bajtkód na strojové kódy požadovaného procesoru. Moderní technologie dynamické kompilace umožňuje dosáhnout vysoké úrovně výkonu. CLR VM se také stará o základní zabezpečení, správu paměti a samotný systém výjimek , což vývojářům ušetří práci.
Architektura .NET Framework je popsána a publikována ve specifikaci Common Language Infrastructure (CLI) , vyvinuté společností Microsoft a schválené ISO a ECMA . CLI popisuje datové typy .NET, formát metadat o struktuře programu, systém provádění bajtkódu a mnoho dalšího.
Třídy objektů .NET dostupné pro všechny podporované programovací jazyky jsou obsaženy v Framework Class Library (FCL) . FCL zahrnuje třídy z Windows Forms , ADO.NET , ASP.NET , Language Integrated Query , Windows Presentation Foundation , Windows Communication Foundation a dalších. Jádro FCL se nazývá Base Class Library (BCL) .
Vývojová prostředí, která podporují .NET:
Aplikace .NET lze také vyvíjet v textovém editoru pouhým vyvoláním kompilátoru z příkazové řádky .
Verze a aktualizace Service Pack rozhraní .NET Framework jsou k dispozici třemi hlavními způsoby: prostřednictvím mechanismu automatických aktualizací Windows Update, ke stažení z centra pro stahování Microsoft Download Center a jako součást nových verzí operačních systémů [13] .
Verze | CLR | Číslo verze | datum vydání | vizuální studio | Výchozí ve Windows | Nahrazuje |
---|---|---|---|---|---|---|
1,0 | 1,0 | 1.0.3705.0 | 1. května 2002 | Visual Studio .NET | Funguje na Windows 98, Windows 98 SE, Windows Me, Windows NT 4.0 SP6, Windows 2000 a Windows XP. .NET Framework 1.0 není kompatibilní s Windows 95. | n/a |
1.1 | 1.1 | 1.1.4322.573 | 1. dubna 2003 | Visual Studio .NET 2003 | Windows Server 2003 nejnovější podporovaná verze rozhraní .NET Framework pro Windows 98 FE a Windows NT 4.0 SP6 |
1,0 |
2,0 | 2,0 | 2.0.50727.42 | 11. července 2005 | Visual Studio 2005 | Windows Vista, Windows 7, Windows Server 2008 R2 .NET Framework 2.0 bez aktualizací Service Pack je nejnovější podporovaná verze rozhraní .NET Framework pro Windows 98 SE a Windows Me .NET Framework 2.0 SP2 je nejnovější podporovaná verze rozhraní .NET Framework pro Windows 2000 SP4 |
n/a |
3.0 | 2,0 | 3.0.4506.30 | 6. listopadu 2006 | Visual Studio 2005 + rozšíření | Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2 | 2,0 |
3.5 | 2,0 | 3.5.21022.8 | 9. listopadu 2007 | Visual Studio 2008 | Windows 7, Windows Server 2008 R2 nejnovější podporovaná verze rozhraní .NET Framework pro Windows XP SP2 |
2,0, 3,0 |
4,0 | čtyři | 4.0.30319.1 | 12. dubna 2010 | Visual Studio 2010 | Windows 8, Windows Server 2012 nejnovější podporovaná verze rozhraní .NET Framework pro Windows XP SP3 |
n/a |
4.5 | čtyři | 4.5.50709.17929 | 15. srpna 2012 | Visual Studio 2012 | Windows 8, Windows Server 2012 | 4,0 |
4.5.1 | čtyři | 4.5.50938.18408 | 17. října 2013 | Visual Studio 2013 | Windows 8.1, Windows Server 2012 R2 | 4,0, 4,5 |
4.5.2 | čtyři | 4.5.51209.34209 | 5. května 2014 | n/a | n/a | 4,0-4,5.1 |
4.6 | čtyři | 4.6.1038.0 | 20. července 2015 | Visual Studio 2015 | Windows 10 | 4,0-4,5,2 |
4.6.1 | čtyři | 4.6.23123.0 | 17. listopadu 2015 | Visual Studio 2015 aktualizace 1 | Windows 10 v1511 nejnovější podporovaná verze rozhraní .NET Framework pro Windows Vista SP2 |
4,0-4,6 |
4.6.2 | čtyři | 4.6.23907.0 | 20. července 2016 | Windows 10 v1607 | 4,0-4,6.1 | |
4.7 | čtyři | 4.7.02046 | 5. dubna 2017 | Visual Studio 2017 | Windows 10 v1703 | 4,0-4,6,2 |
4.7.1 | čtyři | 4.7.02556 | 17. října 2017 | Visual Studio 2017 v15.5 [14] | Windows 10 v1709, Windows Server 2016 (verze 1709) [15] | 4,0-4,7 |
4.7.2 | čtyři | 4.7.03056 | 30. dubna 2018 | Visual Studio 2017 v15.8 [16] | Windows 10 v1803 | 4,0-4,7.1 |
4.8 | čtyři | 4.8.3761.0 | 18. dubna 2019 | Windows 10 v1903, nejnovější podporovaná verze .NET Framework pro Windows 7 SP1 |
4,0-4,7,2 |
První vydání rozhraní .NET Framework bylo 5. ledna 2002 pro Windows 98 , NT 4.0 , 2000 a XP . Obecná podpora Microsoftu skončila 10. července 2007 a rozšířená podpora skončila 14. července 2009 [17] .
Další verze .NET Framework vyšla 1. dubna 2003 . Byla to první verze automaticky nainstalovaná s operačním systémem ( Windows Server 2003 ). Pro starší operační systémy bylo .NET Framework 1.1 k dispozici jako samostatný instalační balíček. Obecná podpora společnosti Microsoft skončila 14. října 2008 a prodloužená podpora skončila 8. října 2013 [17] .
Verze 2.0 byla vydána ve stejnou dobu jako Visual Studio 2005 , SQL Server 2005 a BizTalk 2006 . S vydáním verze 2.0 byla přidána podpora pro vlastní ( generické ) třídy, anonymní metody , plná podpora pro 64bitové platformy x64 a IA-64 . Obecná podpora Microsoftu skončila 12. dubna 2011 a rozšířená podpora skončila 12. dubna 2016 [17] .
Původně se .NET Framework 3.0 jmenovalo WinFX, což odráželo jeho podstatu: rozšíření .NET Framework 2.0 se zachováním všech knihoven a přidáním čtyř nových komponent:
Podpora Microsoftu skončila 12. července 2011 [17] .
Stejně jako verze 3.0 používá .NET 3.5 CLR verze 2.0. Mezi inovace .NET Framework 3.0 patří:
Microsoft oznámil .NET 4.0 29. září 2008 [18] . První beta verze se objevila 20. května 2009 spolu s beta verzí Visual Studia 2010 [19] . Mezi inovace patří:
Finální verze rozhraní .NET Framework 4.0 byla vydána 12. dubna 2010 spolu s finálním vydáním Visual Studio 2010 .
Verze 4.0.3 je maximum, které lze nainstalovat na Windows XP
Při instalaci nahradí rozhraní .NET Framework 4.0. Není kompatibilní se systémem Windows XP a staršími verzemi systému Windows. Mezi inovace patří:
.NET Framework 4.5.1 byl vydán 17. října 2013 s Visual Studio 2013. Tato verze vyžaduje Windows Vista SP2 nebo novější a je dodávána s Windows 8.1 a Windows Server 2012 R2 .
.NET Framework 4.5.2.NET Framework 4.5.2 je aktualizace rozhraní .NET Framework 4.5.1, .NET Framework 4.5 a .NET Framework 4. V případě potřeby se instaluje souběžně s aktualizací .NET Framework 3.5 Service Pack 1.
.NET Framework 4.6 je aktualizace rozhraní .NET Framework 4.5.2, .NET Framework 4.5.1, .NET Framework 4.5 a .NET Framework 4. Instaluje se souběžně s .NET Framework 3.5 Service Pack 1, je-li potřeba.
Je součástí edice Microsoft Visual Studio 2015.
.NET Framework 4.6 podporuje nový JIT kompilátor pro 64bitové systémy (RyuJIT); Aktualizace WPF a WinForms, aby podporovaly obrazovky s vysokým DPI; do WCF byla přidána podpora pro TLS 1.1 a TLS 1.2 . Kryptografické API v .NET Framework 4.6 využívá nejnovější verzi Microsoft CryptoAPI , která zpřístupňuje šifrovací algoritmy Suite B - AES, SHA-2, Elliptic curve Diffie-Hellman, ECDSA [21] .
.NET Framework 4.6.1.NET Framework 4.6.1 je aktualizace rozhraní .NET Framework 4.6, .NET Framework 4.5.2, .NET Framework 4.5.1, .NET Framework 4.5 a .NET Framework 4. Instaluje se souběžně s rozhraním .NET Framework v případě potřeby 3.5 Service Pack 1.
Je součástí Microsoft Visual Studio 2015 Update 1 edition.
.NET Framework 4.6.2.NET Framework 4.6.2 byl vydán 30. března 2016 a vydán 2. srpna 2016 [22] . Jedná se o aktualizaci rozhraní .NET Framework verze 4.6.1, 4.6, 4.5.2, 4.5.1, 4.5 a 4. Instalace vyžaduje Windows 7 SP1 nebo vyšší. Je-li to nutné, nainstalované souběžně s .NET Framework 3.5 Service Pack 1.
.NET Framework 4.7 byl vydán 5. dubna 2017.
.NET Framework 4.7.1.NET Framework 4.7.1 byl vydán 17. října 2017.
.NET Framework 4.7.2.NET Framework 4.7.2 byl vydán 30. dubna 2018.
.NET Framework 4.8 byl vydán 18. dubna 2019 [23] [24]
Verze .NET Framework | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
OS | 1,0 | 1.1 | 2,0 | 3.0 | 3.5 | 4,0 | 4.5 | 4.5.1 | 4.5.2 | 4.6 | 4.6.1 | 4.6.2 | 4.7 | 4.7.1 | 4.7.2 | 4.8 |
Windows 98 | + | |||||||||||||||
Windows NT 4.0 | + | |||||||||||||||
Windows mě | + | |||||||||||||||
Windows 2000 | + | + | + | |||||||||||||
Windows XP | + | + | + | + | + | + | ||||||||||
Windows Server 2003 | + | + | + | + | + | |||||||||||
Windows Server 2008 | + | + | + | + | + | + | + | + | + | + | ||||||
Windows Vista | + | + | + | + | + | + | + | + | + | + | ||||||
Windows 7 | + | + | + | + | + | + | + | + | + | + | + | + | + | + | ||
Windows Server 2008 R2 | + | + | + | + | + | + | + | + | + | + | + | + | + | + | ||
Windows Server 2012 | + | + | + | + | + | + | + | + | + | + | + | + | + | + | ||
Windows 8 | + | + | + | + | + | + | + | + | + | |||||||
Windows 8.1 | + | + | + | + | + | + | + | + | + | + | + | + | + | + | ||
Windows Server 2012 R2 | + | + | + | + | + | + | + | + | + | + | + | + | + | + | ||
Windows 10 | + | + | + | + | + | + | + | + | + | + | + | + | + | + |
Jednou z hlavních myšlenek Microsoft .NET je kompatibilita softwarových částí napsaných v různých jazycích. Například služba napsaná v C++ pro Microsoft .NET může přistupovat k metodě třídy z knihovny napsané v Delphi; v C# můžete napsat třídu, která dědí z třídy napsané ve Visual Basic .NET, a výjimku vyvolanou metodou napsanou v C# lze zachytit a zpracovat v Delphi. Každá knihovna (sestavení) v .NET má informace o verzi, což umožňuje eliminovat možné konflikty mezi různými verzemi sestavení.
Jazyky dodávané s Microsoft Visual Studio :
Implementace .NET Framework způsobila a stále vyvolává mnoho kritiky.
C# | |
---|---|
Verze |
|
NA |
|
Příbuzný |
.SÍŤ | |
---|---|
Implementace | |
Architektura | |
Infrastruktura | |
jazyky Microsoft | |
Jiné jazyky | |
Základy Windows | |
Komponenty | |
Srovnání |
|
Budoucí technologie | |
Informační zdroje |
Microsoft | ||
---|---|---|
NA | ||
Serverový software |
| |
Technika |
| |
Internet |
| |
Hry | ||
Hardware _ | ||
Vzdělání | ||
Licencování | ||
Pododdělení | ||
Reklamní kampaně |
| |
představenstvo |
Bezplatný a otevřený software společnosti Microsoft | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
obecná informace |
| ||||||||||||
Software _ |
| ||||||||||||
licence | |||||||||||||
související témata |
| ||||||||||||
Kategorie |