====== Platforma .NET ====== **.NET** je sjednocená vývojářská platforma pro budování moderních aplikací. Skládá se z běhového prostředí (**Runtime**), knihoven a programovacích jazyků. Hlavním rysem .NETu je jeho schopnost běžet na různých operačních systémech (Windows, Linux, macOS). ===== 1. Historie a evoluce ===== Pochopení názvosloví je klíčové, protože v průběhu let prošlo zásadními změnami: * **.NET Framework (2002–2019):** Původní verze určená výhradně pro Windows. Poslední verze je 4.8. * **.NET Core (2016–2020):** Zcela nová, přepsaná verze, která zavedla multiplatformnost a vysoký výkon. * **.NET (5, 6, 7, 8+) (2020–současnost):** Sjednocená platforma, která zahodila přívlastek "Core" a pokračuje v ročních cyklech vydávání nových verzí. --- ===== 2. Architektura a komponenty ===== Platforma funguje na principu kompilace do mezijazyka, což zajišťuje její flexibilitu. * **C#, F#, Visual Basic:** Hlavní programovací jazyky. * **Common Intermediate Language (CIL):** Zdrojový kód je nejprve přeložen do tohoto univerzálního mezijazyka. * **CoreCLR (Common Language Runtime):** Běhové prostředí, které spravuje spouštění programu. Obsahuje [[it:sw:garbage_collector|Garbage Collector]] a JIT kompilátor. * **JIT (Just-In-Time) Compiler:** Převádí mezikód (CIL) na strojový kód procesoru až ve chvíli, kdy je program spuštěn. --- ===== 3. Ekosystém knihoven a nástrojů ===== * **Base Class Library (BCL):** Obrovská sada standardních knihoven pro práci se soubory, textem, daty a sítěmi. * **NuGet:** Správce balíčků, který umožňuje snadno přidávat knihovny třetích stran do projektů. * **Visual Studio / VS Code:** Hlavní vývojová prostředí (IDE). * **.NET CLI:** Příkazová řádka pro vytváření, sestavování a testování aplikací (příkazy `dotnet new`, `dotnet build`). --- ===== 4. Typy aplikací v .NET ===== ^ Technologie ^ Oblast použití ^ | **ASP.NET Core** | Webové aplikace a REST API | | **Entity Framework Core** | Práce s databázemi (ORM) | | **.NET MAUI** | Multiplatformní mobilní a desktopové aplikace | | **Blazor** | Interaktivní webové UI pomocí C# namísto JavaScriptu | | **Unity** | Vývoj 2D a 3D her | --- ===== 5. Hlavní výhody platformy ===== * **Vysoký výkon:** .NET patří v benchmarcích (např. TechEmpower) mezi nejrychlejší webové frameworky na světě. * **Bezpečnost:** Silné typování, automatická správa paměti a ochrana proti běžným útokům. * **Ekosystém:** Rozsáhlá komunita a podpora ze strany Microsoftu (dlouhodobá podpora - LTS verze). * **Moderní C#:** Jazyk, který neustále adoptuje moderní prvky (vzorování, asynchronní programování). ---- //Související články:// * [[it:sw:garbage_collector|Garbage Collector a správa paměti]] * [[it:sw:csharp|Jazyk C# a jeho vlastnosti]] * [[it:net:http_protocol|HTTP a webová komunikace v .NET]] //Tagy: {{tag>programming dot-net csharp framework backend architecture}}//