====== .NET Framework ====== **.NET Framework** je softwarová platforma vyvinutá společností Microsoft, která poskytuje prostředí pro vývoj a spouštění aplikací především na operačním systému Windows. ===== Základní charakteristika ===== .NET Framework byl poprvé představen v roce 2002 a stal se klíčovou technologií pro vývoj Windows aplikací. Skládá se ze dvou hlavních komponent: * **Common Language Runtime (CLR)** – běhové prostředí, které spravuje provádění kódu, garbage collection, bezpečnost a další systémové služby * **Framework Class Library (FCL)** – rozsáhlá knihovna předdefinovaných tříd a funkcí pro běžné programátorské úkoly ===== Podporované jazyky ===== .NET Framework podporuje více programovacích jazyků, přičemž nejpoužívanější jsou: * C# (C Sharp) * Visual Basic .NET * F# * C++/CLI Všechny tyto jazyky se kompilují do společného **mezijazyka (MSIL – Microsoft Intermediate Language)**, který je následně prováděn CLR. ===== Hlavní výhody ===== Platforma přináší několik klíčových výhod pro vývojáře: * Automatická správa paměti (Garbage Collection) * Robustní typový systém * Snadná integrace mezi různými jazyky * Rozsáhlá standardní knihovna * Podpora pro moderní programovací koncepty (async/await) * Vysoká úroveň zabezpečení ===== Verze a vývoj ===== .NET Framework prošel mnoha verzemi, přičemž nejvýznamnější milníky byly: * **.NET Framework 1.0** (2002) – první verze * **.NET Framework 2.0** (2005) – generika, partial classes * **.NET Framework 3.5** (2007) – LINQ, lambda výrazy * **.NET Framework 4.x** (2010-2019) – async/await, modernizace Poslední verzí je **.NET Framework 4.8**, vydaný v roce 2019. Microsoft oznámil, že tato verze je poslední velkou verzí .NET Frameworku. ===== .NET Framework vs .NET Core vs .NET ===== Je důležité rozlišovat: * **.NET Framework** – původní platforma pouze pro Windows * **.NET Core** – multiplatformní verze (Windows, Linux, macOS) * **.NET** (dříve .NET 5+) – nástupce .NET Core, sjednocená platforma Microsoft doporučuje pro nové projekty používat moderní **.NET** místo staršího .NET Frameworku. ===== Typy aplikací ===== S .NET Frameworkem lze vytvářet různé typy aplikací: * Desktop aplikace (WinForms, WPF) * Webové aplikace (ASP.NET) * Webové služby a API * Windows služby * Konzolové aplikace ===== Systémové požadavky ===== .NET Framework vyžaduje operační systém Windows. Různé verze frameworku podporují různé verze Windows: * Windows 7 SP1 a novější pro .NET Framework 4.6+ * Windows 10/11 obsahují .NET Framework předinstalovaný ===== Související pojmy ===== * [[CLR]] – Common Language Runtime * [[CSharp]] – programovací jazyk C# * [[ASP.NET]] – framework pro webové aplikace * [[Visual Studio]] – vývojové prostředí * [[NuGet]] – správce balíčků ===== Externí odkazy ===== * [[https://dotnet.microsoft.com/|Oficiální stránky .NET]] * [[https://learn.microsoft.com/cs-cz/dotnet/framework/|Microsoft dokumentace]]