====== NuGet ====== **NuGet** je oficiální správce balíčků (package manager) pro platformu [[.net_framework|.NET]]. Umožňuje vývojářům snadno vytvářet, sdílet a konzumovat knihovny kódu ve formě balíčků s příponou **.nupkg**. Funguje podobně jako *npm* v JavaScriptu, *Maven* v Javě nebo *pip* v Pythonu. ===== Jak NuGet funguje? ===== NuGet automatizuje proces přidávání externích knihoven do projektu. Namísto ručního stahování DLL souborů a řešení jejich verzí se NuGet postará o: * **Stažení knihovny:** Stáhne požadovaný balíček z centrálního registru (nuget.org) nebo lokálního zdroje. * **Správu závislostí:** Pokud knihovna A vyžaduje ke svému běhu knihovnu B, NuGet automaticky nainstaluje obě. * **Aktualizace:** Umožňuje snadno povýšit verzi knihovny na novější jedním kliknutím nebo příkazem. ===== Hlavní součásti systému ===== ^ Součást ^ Popis ^ | **NuGet Gallery** | Centrální veřejný repozitář ([[https://www.nuget.org|nuget.org]]), kde jsou uloženy miliony balíčků. | | **NuGet v IDE** | Grafické rozhraní ve Visual Studiu pro pohodlnou správu balíčků. | | **dotnet CLI** | Příkazová řádka pro automatizaci a práci v terminálu (např. `dotnet add package Newtonsoft.Json`). | ===== Formát balíčku (.nupkg) ===== Samotný balíček je v podstatě komprimovaný soubor (ZIP), který obsahuje: * Zkompilovaný kód (knihovny .dll). * Manifest (soubor `.nuspec`) s informacemi o verzi, autorovi a závislostech. --- //Související pojmy: [[csharp|C#]], [[.net_framework|.NET Framework]], [[https://it-slovnik.cz/pojem/knihovna|Softwarová knihovna]]//