nejčastější dotazy k vývoji aplikace pro Windows

Tyto nejčastější dotazy poskytují odpovědi na běžné otázky týkající se vývoje Windows aplikací, včetně pokynů k výběru správné architektury pro vaše projekty. Probíraná témata zahrnují:

  • Začínáme a prostředí vývoje aplikací pro Windows.
  • Nativní vývoj aplikací jen pro Windows pomocí WinUI 3, Windows Presentation Foundation (WPF (Windows Presentation Foundation)) a model Windows Forms (WinForms).
  • Windows Software Development Kit (SDK) a Windows App SDK.
  • Cílení Windows jako součást strategie vývoje pro různé platformy.
  • Vývoj hybridních a webových aplikací s využitím .NET MAUI, Blazoru a ASP.NET Core
  • Jak zvolit přístup při pochopení investic do Microsoft

Vývoj aplikací pro Windows

Kdy najdu jednoduchý přehled vývojových technologií Windows?

Pro skvělou recenzi dnešních možností pro vývojáře Windows se podívejte na nejnovější Windows dev chat epizodu, Volba ideální vývojové platformy, kde probírají WinUI, .NET MAUI, React Native, Blazor a Progresivní Web Apps (PWA).

Můžete se také podívat na přehled možností vývoje aplikací pro vývojáře Windows.

Proč je vývoj klientských aplikací stále zásadní pro moderní digitální transformaci v éře cloudových služeb?

Ve věku cloud services zůstává vývoj klientských aplikací důležitou součástí moderní digitální transformace. Pro vývojáře je vytváření klientských aplikací nezbytné nejen pro dosah, ale také pro zajištění responzivních a smysluplných interakcí na uživatelských zařízeních.

Tady je důvod, proč na klientských aplikacích záleží:

  • Device Reach: S více než 1,5 miliardami zařízení Windows a více než 5 miliard zařízení s Androidem a iOSem globálně umožňují klientským aplikacím přenést aplikace přímo uživatelům na jejich zařízeních podle výběru.
  • Brána k inteligentním službám: klientské aplikace jsou často první interakce, kterou uživatelé mají s vašimi službami. Nabízejí bohaté interaktivní rozhraní, které umožňuje prezentovat inteligentní funkce a odlišit váš produkt od ostatních.
  • Scalability with Cloud Integration: Dobře integrovaná klientská aplikace se může snadno synchronizovat s back-endovými cloud services, což umožňuje access dat v reálném čase a bezproblémovou škálovatelnost při růstu uživatelské základny.
  • vyšší produktivita a věrnost uživatelů: promyšleně navržená aplikace může zvýšit produktivitu a udržet uživatele v zapojení do vašeho produktu nebo služby v průběhu času.

Vývoj nativních aplikací jen pro Windows

Co je Windows App SDK?

Windows App SDK je platforma pro vývoj aplikací Windows, která umožňuje vytvářet krásné, moderní a zpětně kompatibilní desktopové aplikace (až Windows 10 1809). WinUI je architektura uživatelského rozhraní, která se dodává s Windows App SDK.

Co je rozdíl mezi Windows App SDK a sadou SDK Windows?

Obě jsou sady SDK (software development kit), které umožňují vytvářet Windows aplikace.

Windows App SDK je nová vývojová platforma, která umožňuje vytvářet moderní desktopové aplikace, které je možné nainstalovat napříč verzemi Windows (až do Windows 10 1809). Při sestavování pomocí Windows App SDK jsou k dispozici nejnovější funkce vývojové platformy Windows. Windows App SDK zahrnuje WinUI.

Sada Windows SDK je vývojová platforma, která umožňuje vytvářet aplikace pro UPW a desktopové aplikace Win32/desktop. Je navržená kolem rozhraní API Windows, která jsou svázaná s konkrétními verzemi operačního systému.

Soubor Windows App SDK nenahrazuje sadu SDK Windows. Místo toho Windows App SDK doplňuje Windows SDK. Poskytuje pohodlnou abstrakci oddělenou od operačního systému, která obklopuje bohatý katalog rozhraní API Windows OS, která jsou již přístupná pomocí Windows SDK. Aplikace vytvořené pomocí Windows App SDK můžou dál používat rozhraní API sady Windows SDK v závislosti na potřebách funkcí. V průběhu času se do Windows App SDK přesune více funkcí sady WINDOWS SDK.

Vytvoříme nový tým pro vývoj aplikace jen pro Windows. Proč bych se měl rozhodnout vyvíjet s nativní architekturou Windows, jako je WinUI, WPF (Windows Presentation Foundation) nebo WinForms?

Tady je několik důvodů, proč zvolit nativní architekturu Windows pro aplikaci jen pro Windows:

  • Performance: Nativní architektury Windows jsou optimalizované tak, aby využívaly moderní hardware Windows a poskytovaly rychlé a responzivní uživatelské prostředí.
  • Integration: Windows se dodává s širokou škálou rozhraní API, která umožňují sofistikovaná prostředí dostupná jenom na Windows. Nativní architektury poskytují hlubokou integraci s těmito funkcemi a rozhraními API.
  • Native user experience: Native frameworks poskytují konzistentní prostředí napříč zařízeními Windows a zajišťují, aby vaše aplikace vypadala a fungovala skvěle všude.
  • Podpora offline: Nativní architektury podporují offline scénáře, které aplikacím umožňují fungovat i bez připojení k internetu.
  • Monetization: Nativní architektury jsou aktivně udržovány a podporovány Microsoft, což zajišťuje přístup k nejnovějším aktualizacím a funkcím.
**
Který framework mám použít, abych využil nejnovější investice Microsoftu do vývoje aplikací pro Windows?

Pokud vytváříte novou aplikaci jen pro Windows, doporučujeme používat WinUI. WinUI je nejnovější nativní architektura uživatelského rozhraní pro vývoj aplikací Windows a je navržená tak, aby fungovala v široké škále Windows zařízení. Poskytuje moderní a flexibilní architekturu uživatelského rozhraní pro vytváření vizuálně atraktivních a interaktivních aplikací Windows. WinUI je součástí Windows App SDK a funguje nejlépe s nejnovějšími verzemi Windows.

Mohu použít Windows App SDK / WinUI ve své existující aplikaci Windows?

Všimněte si, že WinUI (architektura uživatelského rozhraní) se dodává s architekturou Windows App SDK (architektura pro vývoj platformy Windows).

Obecně platí, že WinUI se nedá použít, pokud není aplikace připravená k úplné migraci architektury uživatelského rozhraní. Funkce označovaná jako XAML Islands umožňuje hostování obsahu WinUI v jiných architekturách uživatelského rozhraní (WPF (Windows Presentation Foundation), Win32). Další informace najdete v dokumentaci k XAML Islands .

Prvky Windows App SDK lze často používat v desktopových aplikacích v závislosti na tom, jak byla existující aplikace vytvořena. Aplikace pro UPW nejsou podporovány Windows App SDK.

To znamená, že aplikace WPF (Windows Presentation Foundation)/MFC/WinForms můžou používat rozhraní API Windows App SDK, která nesouvisejí s WinUI. Mezi příklady patří životní cyklus aplikací, správa oken a toastová upozornění.

Další informace najdete v tématu Použití Windows App SDK v existujícím projektu.

Potřebuji k vytváření aplikací WinUI používat Visual Studio?

Pro vývoj pro WinUI důrazně doporučujeme používat Visual Studio 2026 nebo novější. Nejnovější verze Visual Studia nabízejí bohaté vývojové funkce, jako je Opětovné načítání za provozu, a obsahují pracovní zátěž vývoje aplikací WinUI, která usnadňuje nastavení.

Jiné integrované vývojové prostředí a pracovní postupy můžou fungovat, ale Visual Studio je aktuálně jediným oficiálně podporovaným integrovaným vývojovém prostředím (IDE) pro WinUI. Všimněte si, že nástroj MSBuild je nutný ke kompilaci projektů XAML nebo WinUI.

Při spuštění aplikace se zobrazí chyba Nejde načíst knihovnu DLL Microsoft.ui.xaml.dll. Jak to opravit?

K této chybě obvykle dochází ve scénářích aplikace unpackaged, ve kterých se na počítači nenainstaloval modul runtime Windows App SDK. Vyzkoušejte následující kroky:

  • Pokud používáte balenou aplikaci (doporučenou výchozí hodnotu), ujistěte se, že ji spouštíte prostřednictvím Visual Studio s vybraným profilem spuštění MsixPackage (nikoli s profilovým spustitelným souborem). Krok balení MSIX nainstaluje požadované součásti modulu runtime.
  • Pokud používáte aplikaci unpackaged, musíte před spuštěním aplikace mimo Visual Studio nainstalovat Windows App SDK runtime samostatně.
  • Pokud během vývoje dojde k chybě, otevřete své a ověřte, že konfigurace balíčku odpovídá vašemu modelu nasazení: pro balíčkované aplikace vynechejte vlastnost (nebo ji ponechte ve výchozím nastavení), pak sestavte a spusťte balíček MSIX; pro nebalíčkované aplikace nastavte a ujistěte se, že jste při spuštění volali .

Další podrobnosti o požadavcích na nasazení najdete v tématu Nasazení aplikací, které používají Windows App SDK.

Jaký je rozdíl mezi WinUI 3 a WinUI 2 pro UPW?

WinUI (dříve označované jako WinUI 3) je nejnovější nativní architektura uživatelského rozhraní pro vývoj aplikací Windows. Poskytuje moderní a flexibilní architekturu uživatelského rozhraní pro vytváření vizuálně atraktivních a interaktivních aplikací Windows. WinUI je součástí Windows App SDK a funguje nejlépe s nejnovějšími verzemi Windows.

WinUI pro UPW (dříve označované jako WinUI 2) je sada ovládacích prvků uživatelského rozhraní a stylů založených na UPW. Poskytuje moderní vzhled a dojem aplikací pro UWP a je navržený pro Windows 10.

Pokud vytvořím aplikaci pomocí Windows App SDK a WinUI, vytvářím "aplikaci WinUI"?

Ano – "Aplikace WinUI" je doporučený termín. Aplikace WinUI se označují jako "Aplikace WinUI", protože WinUI pro UPW není typ aplikace, ale sada komponent používaných v aplikacích pro UPW.

Můžu přírůstkově aktualizovat aplikaci pro UPW pomocí WinUI pro ovládací prvky UPW na WinUI tak, že postupně nahradím WinUI pro komponenty UPW komponentami WinUI?

Ne. Windows App SDK nejde použít v aplikacích pro UPW a WinUI pro UPW nejde kombinovat s WinUI. Viz Migrace z UPW do Windows App SDK.

Jak těžké je migrovat aplikaci pro UPW na WinUI?

Migrace komponent uživatelského rozhraní je obecně jednoduchá (pro C# a C++/WinRT). Jinak náklady na migraci závisí především na:

  1. Projektový soubor a přizpůsobení nástroje MSBuild: Migrace se může lišit v závislosti na pokročilém použití nástroje MSBuild.
  2. migrace rozhraní API .NET: aplikace pro UWP používající .NET musí přejít na .NET 6 nebo novější. V mnoha případech je přijetí .NET 6 jednoduché.
  3. Knihovny komponent uživatelského rozhraní: Knihovny musí mít verze určené pro WinUI.
  4. Pokud je aplikace pro UPW napsaná v nově nahrazené C++/CX, vyžaduje se portování zdrojového kódu. Viz Přejděte na C++/WinRT z C++/CX.

Další informace najdete v tématu Migrate z UPW do Windows App SDK.

Pokud mám existující aplikaci pro UPW ve Storu, můžu publikovat novou zabalenou aplikaci WinUI pomocí stejných identifikátorů?

Ano, upgradované aplikace je možné publikovat bez aktualizace identity aplikace. Uživatelé staré verze se aktualizují na novou verzi. To platí jenom pro desktopové aplikace. aplikace Xbox, HoloLens a Surface Hub nemůžou migrovat na WinUI.

Jak mohu zabalit/rozdělit svou aplikaci WinUI?

Viz přehled nasazení .

Kde najdu pokyny k migraci Windows App SDK?

Viz Migrace z UPW do Windows App SDK.

Musím použít kód XAML, pokud chci použít WinUI?

Ne. Ovládací prvky uživatelského rozhraní lze vytvořit v kódu. Reprezentace uživatelského rozhraní v deklarativním kódu XAML ale nabízí mnoho výhod, včetně vylepšeného vývojářského prostředí.

  • Migrace z UPW na WinUI: Mnoho komponent XAML a uživatelského rozhraní je možné znovu použít, i když jsou potřeba některé úpravy syntaxe.
  • Migrace z WPF (Windows Presentation Foundation) na WinUI: Mnoho konceptů se přenáší, ale sada ovládacích prvků a rozhraní API se liší.
Má Visual Studio návrhovou plochu / návrhář uživatelského rozhraní pro WinUI?

Zatím ne. Jedná se o známou mezeru v prostředí pro vývojáře WinUI. Nástroje jako XAML Opětovné načítání za provozu můžou pomoct v mnoha scénářích. Práce byla zahájena na návrháři UI Visual Studio pro WinUI v Windows App SDK 1.7, ale zatím neexistuje žádná časová osa pro jeho vydání.

Obsahuje Windows App SDK WinUI?

Ano. WinUI se dodává jako součást Windows App SDK.

Zahrnuje Windows App SDK WinUI pro UWP?

Ne. WinUI pro UPW je součástí platformy UPW.

Jsou WinUI pro UPW a WinUI postavené na stejné technologii?

Ani ne. I když WinUI původně vycházelo z kódové základny pro WinUI pro UWP, jedná se o odlišné technologie. Obě jsou architektury uživatelského rozhraní založené na XAML, které fungují napříč .NET a C++, ale WinUI pro UPW a WinUI nejsou vzájemně kompatibilní.

Mohu použít WinUI bez použití Windows App SDK?

Ne. WinUI se dodává jako součást Windows App SDK.

Můžu použít WinUI v rozbalené aplikaci?

Ano. Všechny technologie v Windows App SDK, včetně WinUI, fungují v rozbalených aplikacích.

Jaký je rozdíl mezi ostrovy XAML a WinUI?

Ostrovy XAML umožňují hostovat moderní ovládací prvky založené na XAML společně s existujícím uživatelským rozhraním Win32 z jiných architektur, jako jsou WinForms a WPF (Windows Presentation Foundation).

V současné chvíli XAML Islands podporují většinu systémových prvků XAML a WinUI pro UWP ovládací prvky. Další podrobnosti najdete v tématu hostování ovládacích prvků WinRT XAML v desktopových aplikacích (Ostrovy XAML). Podpora hostování ovládacích prvků WinUI je dostupná od verze Windows App SDK 1.4.

Pokud vytvořím aplikaci WinUI, bude vypadat moderně na Windows 11 i na Windows 10?

Ano. Uživatelské rozhraní vaší aplikace dědí nejnovější principy návrhu uživatelského rozhraní Fluent ve všech podporovaných verzích Windows 11 a Windows 10 až do verze 1809 v zabalených i rozbalených scénářích.

Mohou se v aplikacích vytvořených pomocí Windows App SDK používat pozadí Mica nebo Acrylic?

Ano. Viz Použití materiálů Mica nebo Acrylic v desktopových aplikacích pro Windows 11.

Kde najdu ukázky WinUI?

Viz Ukázky a prostředky. Některá použitelná úložiště:

Pokud jsem již investoval do WPF (Windows Presentation Foundation), mám dál používat WPF (Windows Presentation Foundation) nebo zvážit migraci na WinUI?

Pokud jste už investovali do WPF (Windows Presentation Foundation), můžete ho dál používat pro stávající aplikace. WPF (Windows Presentation Foundation) je vyspělá stabilní architektura, která se běžně používá k vytváření Windows desktopových aplikací.

Zvažte použití pomocníka pro upgrade .NET k migraci aplikací .NET Framework WPF (Windows Presentation Foundation) na nejnovější platformu .NET. Analyzuje základ kódu a poskytuje pokyny k jeho aktualizaci.

Pokud vytvořím novou aplikaci WPF (Windows Presentation Foundation), bude vypadat zastarale v porovnání s jinými novými aplikacemi Windows?

Při vývoji WPF (Windows Presentation Foundation) aplikace s .NET 9 nebo novějším můžete zajistit, aby vaše aplikace odpovídala elegantnímu a modernímu vzhledu Windows 11. Nový motiv Fluent pro WPF (Windows Presentation Foundation) představuje moderní estetiku Windows 11 s integrovaným světlým/tmavým režimem a podporou systémových barev zvýraznění. Tím se modernizuje vzhled vaší aplikace a přináší elegantní a soudržné uživatelské prostředí.

Můj tým je zvyklý na sestavování aplikací WinForms a to vyhovuje našim potřebám. Máme zvážit migraci na WinUI nebo jiný rámec?

Pokud WinForms splňuje vaše potřeby a váš tým je s ním obeznámený, můžete i nadále používat WinForms pro stávající aplikace. WinForms je vyspělá a stabilní architektura široce používaná pro vývoj Windows desktopů.

Tým WinForms nadále investuje do platformy. Mezi současné oblasti investic patří:

  • Podpora asynchronních ovládacích prvků
  • Tmavý režim
  • Flexibilita rozložení
  • Funkce zabezpečení plochy, jako je přístup ke schránce

Vývoj nativních aplikací pro různé platformy

Co jsou některé důvody pro vytváření multiplatformních nativních aplikací, které cílí na Windows?

Pokud cílíte na uživatele na více platforem operačního systému, vytváření multiplatformních aplikací pomocí .NET MAUI nebo React Native může přinést několik výhod:

  • Dosáhnout: Multiplatformní aplikace se dostanou k většímu publiku napříč různými zařízeními a operačními systémy.
  • Opakované použití kódu: Opětovné spuštění kódu napříč platformami zkracuje čas a náklady na vývoj. Vytváření samostatných aplikací pro Windows, Android, iOS a macOS může být příliš nákladné.
  • Konzistentní uživatelské prostředí: Multiplatformní architektury pomáhají zajistit konzistentní vzhled a chování napříč platformami.
  • Integrace: Multiplatformní aplikace se stále můžou integrovat se službami specifickými pro danou platformu, aby poskytovaly komplexní prostředí.
Mohu si být jistý, že aplikace .NET MAUI budou dobře fungovat ve Windows?

Když vytvoříte aplikaci .NET MAUI pro Windows, výstupem je aplikace WinUI. Během vývoje nabízí .NET MAUI jediné .NET prostředí napříč platformami, ale generuje kód specifický pro platformu pod kapotou. To zajišťuje, že .NET MAUI aplikace dobře fungují na každé platformě a poskytují nativní uživatelské prostředí.

W může .NET MAUI poskytovat nativní rozhraní API zařízení na všech platformách?

.NET MAUI poskytuje jednotné prostředí .NET napříč Windows, iOSem, Androidem a macOS. Abstrahuje více než 60 rozhraní API specifických pro platformu do jedné sady rozhraní API pro různé platformy, která pokrývá oblasti, jako jsou storage, sítě a senzory zařízení. K dalším rozhraním API pro konkrétní platformu je také možné přistupovat pomocí injektáže závislostí, aby bylo možné poskytovat specializované implementace na platformu.

Mohu začít s WinUI a později integrovat .NET MAUI, pokud bych nakonec chtěl cílit na scénáře pro různé platformy?

V tuto chvíli ne. I když .NET MAUI při spouštění na Windows používá WinUI, týmy, které očekávají, že cílí na více platforem, by měly začít s .NET MAUI nebo React Native for Desktop.

Náš tým má silné webové front-endové vývojové dovednosti. Měli bychom zvážit použití React Native pro Desktop?

Týmy se silným vývojovým prostředím pro web můžou chtít zvážit React Native for Desktop. Zahrnuje React Native pro Windows a macOS. Díky přístupu "Learn once, write anywhere" (Jednou naučte se psát kdekoli), stávající dovednosti JavaScriptu, TypeScriptu a Reactu se dají použít k vytváření nativních Windows a aplikací pro macOS.

React Native for Desktop vykresluje uživatelské rozhraní přímo na nativní primitivy a poskytuje nativní výkon a možnosti platformy.

Informace o get started najdete v dokumentaci k React Native for Desktop.

Jsou nějaká další zařízení Windows podporována React Native for Desktop?

Aplikace React Native je možné nasadit na všechna zařízení podporovaná Windows 10 a novějším, včetně počítačů, tabletů, 2 v-1, Xbox a zařízení hybridní reality.

Co mám použít, pokud chci vytvářet aplikace, které pracují na Windows a Xbox?

Pokud vaše aplikace potřebuje podporovat Xbox, HoloLens nebo IoT, doporučuje se UPW. Windows App SDK tyto platformy nepodporuje. Pro vývoj her použijte Herní vývojová sada Microsoft.

Co mám použít, pokud chci vytvářet aplikace, které pracují na Windows a Surface Hub?

Pokud cílíte na Windows i Surface Hub, doporučuje se UWP.

Vývoj hybridního a webového prostředí

Co jsou hybridní aplikace a proč bych měl zvážit jeho vytvoření?

Hybridní aplikace kombinuje to nejlepší z vývoje webových a nativních aplikací. Jejich jádro je vytvořené pomocí webových technologií, jako jsou HTML, CSS a JavaScript, a zabalené do nativního kontejneru, který poskytuje access určitým funkcím a hardwaru nativní platformy. Dají se také distribuovat prostřednictvím obchodů s aplikacemi.

Hlavní výhodou je, že hybridní aplikace umožňují vytvořit jednu aplikaci, která může běžet na několika nativních platformách a na webu, což zkracuje čas a náklady na vývoj. Mezi příklady platforem pro vývoj hybridních aplikací patří:

  • Elektron pro desktopové aplikace
  • Ionic pro mobilní aplikace
  • .NET MAUI Blazor Hybrid pro multiplatformní aplikace
Jak vytvářet nativně působící progresivní webové aplikace (PWA) na Windows?

Viz Webový vývoj na Windows a Přehled progresivních webových aplikací.

Co je hybridní aplikace .NET MAUI Blazor?

S .NET MAUI můžou aplikace Blazor běžet nativně na Windows, iOS, Androidu a macOS. Díky tomu můžete vytvářet hybridní klientské aplikace, které kombinují komponenty Blazor a .NET MAUI v jedné nativní klientské aplikaci s úplným přístupem k možnostem nativní platformy.

Další informace najdete v ASP.NET Core Blazor Hybrid.

Je nutné vytvářet webové komponenty hybridní aplikace .NET MAUI pomocí Blazor?

Ne. Počínaje .NET 9 obsahuje .NET MAUI ovládací prvek HybridWebView, který umožňuje hostování dalších uživatelských rozhraní založených na JavaScriptu v nativní aplikaci.

To vám umožní hostovat Angular, React, Vue nebo jiné aplikace HTML/JavaScript v aplikaci .NET MAUI. Hybridní ovládací prvek poskytuje interoperabilitu mezi C# a JavaScriptem, takže kód jazyka C# může volat funkce JavaScriptu a naopak.

Mohou některé jiné nativní typy aplikací hostovat hybridní komponenty Blazor?

Ano. aplikace WPF (Windows Presentation Foundation) a WinForms můžou také hostovat hybridní komponenty Blazor, což umožňuje přidání moderního webového uživatelského rozhraní do stávajících aplikací. To se nepodporuje pro aplikace WPF (Windows Presentation Foundation) ani WinForms založené na .NET Frameworku.

Musí být celá moje aplikace hybridní nebo můžu kombinovat nativní a hybridní komponenty?

Nativní a hybridní komponenty je možné kombinovat v rámci aplikace. Například jádro aplikace může být sestaveno s komponentami .NET MAUI, zatímco hybridní komponenty poskytují další funkce. To umožňuje kombinovat výkon a možnosti nativních komponent s flexibilitou a nákladovou efektivitou hybridních komponent.

Co jsou moje volby pro vytváření webových aplikací založených na .NET, které vypadají skvěle v moderních prohlížečích na Windows?

Web apps nabízejí nejširší dosah libovolné platformy klientských aplikací. Mezi možnosti vytváření krásných .NET webových aplikací patří:

  • ASP.NET Core aplikace s Razor Pages
  • aplikace ASP.NET Core MVC
  • Aplikace ASP.NET Core Blazor s možnostmi hostovacího modelu:
    • Blazor WebAssembly
    • Blazor Server

Modely hostování Blazor je teď možné nakonfigurovat na úrovni komponent, což umožňuje scénáře, jako je hostování komponenty Blazor WebAssembly v aplikaci Blazor Server.

Další podrobnosti najdete v dokumentaci k ASP.NET Core.

Volba přístupu a pochopení investic do Microsoft

Další možnosti architektury pro vytváření aplikací, které cílí na Windows! Jak se mám rozhodnout?

Windows je otevřená platforma, která podporuje mnoho technologií. Tady jsou některá kritéria, která vám můžou pomoct vybrat platformu:

  • Vyvíjíte přednostně pro Windows nebo multiplatformně?
  • Jaké jazyky nebo dovednosti už máte – .NET, JavaScript, něco jiného?
  • Potřebujete přístup k rozhraním API pro konkrétní Windows?
  • Které možnosti architektury nejlépe odpovídají požadavkům vaší aplikace?
  • Další srovnávací faktory najdete v této tabulce .

Pro mnoho obchodních aplikací týmy často volí na základě stávajících dovedností a toho, co je pro tým nejpohodlnější.

Jak zvolím nejlepší přístup k vývoji mé webové aplikace?

Při výběru vývojového přístupu pro webovou aplikaci zvažte následující skutečnosti:

  • Blazor se doporučuje pro vytváření front-endových webových aplikací s .NET. Umožňuje vytvářet front-end i back-end pomocí .NET, šetřit čas a náklady a je to zvláště vhodné pro podnikové aplikace.
  • JavaScript web apps stále dávají smysl, pokud chcete využít stávající dovednosti JavaScriptu nebo potřebujete integrovat se zavedenými JS knihovnami nebo frameworky.
  • Stávající aplikace využívající starší architektury, jako jsou webové formuláře, MVC nebo Razor Pages, zůstávají podporované a můžou se dál vyvíjet a udržovat.
Kdo dnes vytváří aplikace pomocí WinUI?

Mnoho zákazníků dnes vytváří s WinUI, včetně Adobe a Apple:

  • Adobe Freska, bezplatná aplikace kreslení a malování.
  • Aplikace Apple Music, Apple TV a Apple Devices byly sestaveny pomocí WinUI a Windows App SDK.

Microsoft také vytvořil mnoho aplikací WinUI, jako je průzkumník souborů Windows 11 a aplikace Fotky.

Who dnes vytváří aplikace .NET MAUI?

Mnoho zákazníků, včetně Microsoft, vytváří multiplatformní aplikace s .NET MAUI. Například mobilní aplikace Microsoft Azure je vytvořená pomocí .NET MAUI.

Podívejte se na .NET prezentace zákazníků.

Who dnes vytváří aplikace WPF (Windows Presentation Foundation)?

Většina uživatelského rozhraní Microsoft Visual Studio je sestavená pomocí WPF (Windows Presentation Foundation). Samotné integrované vývojové prostředí (IDE) Visual Studio je hlavním příkladem komplexní aplikace s vysokým výkonem WPF (Windows Presentation Foundation).

Kdo dnes vytváří aplikace Blazor?

Systém letecké společnosti GE Digital FlightPulse používá Blazor pro back-endovou konfiguraci všeho, co piloti vidí, a přináší data snímačů a analýzy přímo pilotům, aby se zlepšila bezpečnost a efektivita.

Další informace Blazor customer stories na webu .NET.

Balení, nasazení a aktualizace

Jaký je rozdíl mezi aplikacemi, které jsou zabalené, rozbalené a zabalené s externím umístěním?

Definice zabalených, rozbalených a zabalených s externími aplikacemi pro umístění najdete v přehledu nasazení. Toto téma také vysvětluje výhody a nevýhody jednotlivých možností.

Aktualizuje se moje aplikace WinUI pro koncové uživatele automaticky?

Aplikaci WinUI je možné doručovat prostřednictvím Storu, souboru .appinstaller nebo prostřednictvím existujícího balíčku MSI nebo setup.exe. Store a AppInstaller podporují automatické aktualizace pro koncové uživatele, kteří mají povolené automatické aktualizace, ale msi/setup.exe aplikace musí poskytovat vlastní mechanismus aktualizace.

Užiju Windows App SDK bez použití nástroje MSBuild?

Obecně ne. WinUI a Windows App SDK vyžadují MSBuild, proto Visual Studio je předpokladem pro jejich vývoj. I když je technicky možné vytvářet Windows App SDK aplikace, které nepoužívají WinUI s jinými sadami nástrojů, není to podporované.

Výkon a optimalizace

Co můžu udělat, aby moje aplikace Windows poskytovala skvělý zážitek koncovým uživatelům?

Podívejte se na Windows vývoj aplikací – osvědčené postupy a Windows přehled výkonu a základů aplikací.

Compatibility

Budou muset moji uživatelé někdy aktualizovat Windows, aby mohli používat mou aplikaci WinUI?

Uživatelé s Windows 10 verze 1809 nebo novější můžou instalovat aplikace WinUI bez aktualizace operačního systému.

Můžu cílit na Arm64 pomocí aplikace WinUI?

Ano.

Vyřazení a migrace

Jsou UPW / WinUI pro UPW zastaralé?

Ne. UWP a WinUI pro UWP jsou stále podporovány a nadále dostávají opravy chyb, spolehlivosti a zabezpečení. Většina nových funkcí a možností se ale přidává do WinUI.

Podpora UPW pro .NET 9 je dostupná. Tato možnost poskytuje cestu modernizace aplikací pro UPW pomocí nejnovější verze .NET.

Mezi cíle podpory .NET 9 UPW patří:

  1. Poskytněte vývojářům, kteří chtějí přejít na WinUI, lepší způsob migrace.
  2. Odeberte závislosti na .NET Native, aby vývojáři mohli těžit z nejnovějších funkcí .NET a jazyka C#.

Další informace najdete v blogovém příspěvku: Modernizace vaší aplikace UWP s podporou UWP ve verzi Preview pro .NET 9 a nativní AOT.

Kdy mám migrovat aplikaci UWP / WinUI na WinUI?

Vývojáři UPW by se neměli cítit tlak na migraci, pokud jsou spokojení s UPW a jeho sadou funkcí – pro mnoho aplikací může být správnou volbou zůstat u UPW.

Aplikace, které chtějí využívat nejnovější Windows platformu a investice do .NET, by měly zvážit přechod na Windows App SDK. Viz Migrace z UPW do Windows App SDK.

Kdy nemám migrovat aplikaci UWP + WinUI na WinUI?

Pokud vytváříte pro Xbox, centrum Surface nebo HoloLens, pokračujte v používání UPW.

Je WPF (Windows Presentation Foundation) zastaralé a odstraněné?

Ne. WPF (Windows Presentation Foundation) se podporuje, doporučuje a nadále dostává aktualizace funkcí. Podívejte se na roadmap WPF (Windows Presentation Foundation) na GitHubu.

Je WinForms zastaralý?

Ne. WinForms se podporuje a nadále přijímá aktualizace funkcí. Podívejte se na model Windows Forms Roadmap na GitHubu.

Je prostředí Windows Runtime (WinRT) zastaralý?

Ne. WinRT je binární rozhraní aplikace (ABI), které umožňuje interoperabilitu napříč více jazyky. WinRT je vývoj modelu COM a Windows App SDK poskytuje většinu jeho funkcí prostřednictvím rozhraní API WinRT.

Poznámky k vydání

Kde mohu najít poznámky k vydání pro Windows App SDK?

Nejnovější poznámky k vydání najdete na stránce Co je nového.