Ez a cikk a Windows fejlesztési élményének és termékirányának általános megértését hivatott elősegíteni.
A Mai Windows-alkalmazásfejlesztési környezet számos keretrendszert és technológiát kínál, amelyek közül választhat. Ez a gyakori kérdések útmutatást nyújtanak arról, hogyan dönthető el, hogy melyik keretrendszert használja Windows-alkalmazásfejlesztési projektjeihez. A következő témaköröket ismerteti:
- Első lépések és a Windows-alkalmazások fejlesztési környezete.
- Natív windowsos alkalmazásfejlesztés a WinUI, a Windows Presentation Foundation (WPF) és a Windows Forms (WinForms) használatával.
- A Windows Software Development Kit (SDK) és a Windows App SDK.
- A Windows megcélzása a platformfüggetlen fejlesztési stratégia részeként.
- Hibrid és webalkalmazás-fejlesztés .NET MAUI, Blazor és ASP.NET Core használatával.
- Hogyan választhat egy megközelítést a Microsoft befektetései megértése közben.
A Windows-alkalmazások fejlesztési környezete
Hol találhatok egyértelmű áttekintést a Windows fejlesztési technológiáiról?
Ha szeretné áttekinteni a Windows-fejlesztők mai lehetőségeit, tekintse meg a Legújabb Windows Dev Chat epizódot, Az ideális fejlesztői platform kiválasztása, ahol a WinUI, a .NET MAUI, a React Native, a Blazor és a Progresszív Web Apps (PWA-k) ismertetésére kerül sor.
A Windows-fejlesztők alkalmazásfejlesztési lehetőségek
Miért kulcsfontosságú még mindig az ügyfélalkalmazások fejlesztése a modern digitális átalakuláshoz a felhőszolgáltatások korában?
A felhőszolgáltatások korában az ügyfélalkalmazás-fejlesztés továbbra is a modern digitális átalakítás kritikus összetevője marad. A fejlesztők számára az ügyfélalkalmazások létrehozása nem csak az eléréshez, hanem a felhasználói eszközökön való rugalmas, értelmes interakciók biztosításához is elengedhetetlen.
Az ügyfélalkalmazások ezért is fontosak:
- Device Reach: Az ügyfélalkalmazások világszerte több mint 1,5 milliárd Windows-eszközzel és több mint 5 milliárd Android- és iOS-eszközzel közvetlenül a felhasználókhoz irányíthatják alkalmazásaikat.
- Átjáró az intelligens szolgáltatásokhoz: ügyfélalkalmazások gyakran az első interakciók a felhasználókkal a szolgáltatásaikkal. Gazdag, interaktív felületet kínálnak, amellyel intelligens funkciókat mutathat be, és megkülönböztetheti a terméket másoktól.
- méretezhetőség a felhőintegrációval: A jól integrált ügyfélalkalmazások könnyedén szinkronizálhatók a háttérbeli felhőszolgáltatásokkal, így a felhasználói bázis növekedésével valós idejű adathozzáférést és zökkenőmentes méretezhetőséget tesznek lehetővé.
- Fokozott hatékonyság és felhasználói hűség: Egy átgondolt kialakítású alkalmazás növelheti a termelékenységet, és folyamatosan figyelemmel követheti a felhasználókat a termékével vagy szolgáltatásával.
Csak windowsos natív alkalmazásfejlesztés
Mi a Windows App SDK?
A Windows App SDK egy Windows-alkalmazásfejlesztési platform, amellyel gyönyörű, modern, visszamenőlegesen kompatibilis asztali alkalmazásokat hozhat létre (egészen a Windows 10 1809-hez). A WinUI 3 a Windows App SDK-t használó felhasználói felületi keretrendszer.
Mi a különbség a Windows App SDK és a Windows SDK között?
Mindkettő szoftverfejlesztői készlet (SDK), amellyel Windows-alkalmazásokat hozhat létre.
A Windows App SDK egy új fejlesztői platform, amellyel modern asztali alkalmazásokat hozhat létre, amelyek windowsos verziókban telepíthetők (windowsos 10 1809-ben). Amikor a Windows App SDK-val hoz létre egy alkalmazást, hozzáférhet a Windows legújabb fejlesztői platform funkcióihoz. A Windows App SDK tartalmazza a WinUI 3-at.
A Windows SDK egy fejlesztői platform, amellyel UWP-alkalmazásokat és Win32/desktop-alkalmazásokat hozhat létre. Olyan Windows API-k köré tervezték, amelyek az operációs rendszer bizonyos verzióihoz vannak csatolva.
A Windows App SDK nem helyettesíti a Windows SDK. Ehelyett a Windows App SDK a Windows SDK kiegészítése. Kényelmes, operációs rendszertől független absztrakciót biztosít a Windows operációsrendszer-API-k gazdag katalógusa körül, amelyhez a Windows SDK-val már hozzáférhet. Ha a Windows App SDK-val hoz létre alkalmazásokat, előfordulhat, hogy a szükséges funkcióktól függően bizonyos Windows SDK API-kat használ. Idővel több Windows SDK-funkció kerül a Windows App SDK-ba.
Új csapatot építek egy csak Windows rendszerű alkalmazás fejlesztéséhez. Miért érdemes natív Windows-keretrendszerrel ( WinUI, WPF vagy WinForms) fejleszteni?
Az alábbiakban néhány okot talál arra, hogy natív Windows-keretrendszert válasszon a csak Windows rendszerű alkalmazáshoz:
- teljesítmény: natív Windows-keretrendszerek úgy vannak optimalizálva, hogy kihasználják a mai Windows-hardverek teljes erejét, és gyors és rugalmas felhasználói élményt nyújtsanak.
- integráció: Windows-hajók széles körű API-kkal építenek ki kifinomult, csak Windowson elérhető funkciókat. A natív keretrendszerek mély integrációt biztosítanak ezekkel a funkciókkal és API-kkal.
- natív felhasználói élmény: natív Windows-keretrendszerek egységes felhasználói élményt biztosítanak a Windows-eszközökön, biztosítva, hogy az alkalmazás minden Windows-eszközön jól nézzen ki és működjön.
- Offline támogatás: natív Windows-keretrendszerek támogatják az offline forgatókönyveket, így az alkalmazás akkor is működik, ha a felhasználó nem csatlakozik az internethez.
- bevételszerzés: natív Windows-keretrendszereket a Microsoft aktívan karbantartja és támogatja, biztosítva, hogy ön hozzáférhessen a legújabb frissítésekhez és funkciókhoz.
Melyik keretrendszert érdemes használni a Microsoft legújabb windowsos alkalmazásfejlesztésbe történő befektetéseihez?
Ha csak Windows rendszerű új alkalmazást készít, javasoljuk a WinUI használatát. A WinUI a Windows-alkalmazások fejlesztésének legújabb natív felhasználói felületi keretrendszere, és úgy lett kialakítva, hogy a Windows-eszközök széles körében működjön. A WinUI egy modern és rugalmas felhasználói felületi keretrendszert biztosít, amellyel vizuálisan vonzó és interaktív Windows-alkalmazásokat hozhat létre. A WinUI a Windows App SDK része, és úgy lett kialakítva, hogy a Legjobban működjön a Windows legújabb verzióival.
Használhatom a Windows App SDK/WinUI-t a meglévő Windows-alkalmazásomban?
Vegye figyelembe, hogy WinUI- (egy felhasználói felületi keretrendszer) Windows App SDK (Windows platformfejlesztési keretrendszer).
Általánosságban elmondható, hogy csak akkor használhatja a WinUI-t, ha készen áll a felhasználói felületi keretrendszer teljes migrálására. Dolgozunk egy XAML-szigetek nevű funkción, amellyel WinUI-tartalmakat tárolhat más felhasználói felületi keretrendszerekben (WPF, Win32).
A Windows App SDK elemeit bármely asztali alkalmazásban használhatja a meglévő alkalmazás felépítésétől függően. A Windows App SDK nem támogatja az UWP-alkalmazásokat.
Ez azt jelenti, hogy WPF/MFC/WinForms alkalmazások olyan Windows App SDK API-kat használhatnak, amelyek nem kapcsolódnak a WinUI-hoz. Ilyen API-k például az alkalmazás életciklusa, az ablakozás és a bejelentési értesítések.
További információt A Windows App SDK használata meglévő projektben című témakörben talál.
WinUI-alkalmazások létrehozásához a Visual Studiót kell használnom?
Határozottan javasoljuk a Visual Studio 2022 17.10-s és újabb verzióinak használatát WinUI-alkalmazások fejlesztéséhez. A Visual Studio legújabb verziójának használatával olyan gazdag fejlesztési funkciókhoz férhet hozzá, mint a Hot Reload. A Legújabb Visual Studio-telepítők egy Windows-alkalmazásfejlesztési számítási feladatot tartalmaznak, így könnyen megkezdheti a WinUI-fejlesztést.
Előfordulhat, hogy más azonosítókat és fejlesztési munkafolyamatokat is használhat, de Visual Studio jelenleg az egyetlen hivatalosan támogatott IDE a WinUI-hoz. Vegye figyelembe, hogy MSBuild szükséges az XAML-t vagy WinUI-t használó projektek fordításához.
Amikor Windows App SDK és WinUI 3 használatával készítek alkalmazást, egy "WinUI-alkalmazást" építek?
Igen – A "WinUI-alkalmazás" az a kifejezés, amelyet ajánlott használni. A WinUI 3-alkalmazásokat általában "WinUI-alkalmazásoknak" nevezzük, mivel a WinUI 2 nem egy alkalmazástípus, hanem az UWP-alkalmazásokban használható összetevők készlete.
Növekményesen frissíthetem az UWP-alkalmazásomat WinUI 2 vezérlőkkel WinUI 3-ra úgy, hogy fokozatosan lecserélem a WinUI 2 összetevőt WinUI 3-összetevőkre?
Nem. A Windows App SDK nem használható UWP-alkalmazásokban, és a WinUI 2 nem keverhető a WinUI 3-val. Lásd: Migrálás UWP-ről a Windows App SDK.
Milyen nehéz migrálni egy UWP-alkalmazást a WinUI-ba?
A felhasználói felület összetevőinek migrálása általában egyszerű (C# és C++/WinRTesetén). Ellenkező esetben az UWP-ről WinUI-ra történő migrálás költsége elsősorban az alábbi tényezőktől függ:
- Projektfájl és AZ MSBuild testreszabása: A projekt migrálása jelentős erőfeszítést igényelhet attól függően, hogy speciális MSBuild-funkciókat használ-e.
- .NET API migrálása: Ha az UWP-alkalmazás a .NET-re támaszkodik, akkor a .NET 6-os vagy újabb verziójára kell frissítenie. A legtöbb esetben a .NET 6 bevezetése egyenes irányban történik.
- felhasználói felületi összetevőtárak: Ha felhasználói felületi összetevőtárakat használ, akkor a WinUI 3-at megcélozó új verziókra lesz szüksége.
- Ha az UWP-forráskód a most felülírt C++/CX fájlban van megírva, akkor a forráskód portolása is részt vesz. Lásd: Áthelyezés A C++/WinRT fájlba a C++/CX.
Az UWP migrálásával kapcsolatos további információkért lásd: Migrálás az UWP-ről a Windows App SDK.
Ha már van UWP-alkalmazásom az Áruházban, közzétehetek egy új csomagolt WinUI-alkalmazást ugyanazokkal az azonosítókkal?
Igen, a frissített alkalmazások közzétehetők anélkül, hogy frissíteni kellene az alkalmazás identitását. A régi verzióval rendelkező felhasználók frissülnek az új verzióra. Ez az útmutató csak az asztali alkalmazásokra vonatkozik. Az Xbox, a HoloLens és a Surface Hub-alkalmazások nem migrálhatók a WinUI-ba.
Hogyan csomagolhatom/terjeszthetem a WinUI-alkalmazásomat?
Lásd: Üzembe helyezés áttekintése.
Hol találom a Windows App SDK áttelepítési útmutatóját?
Használnom kell az XAML-korrektúrát, ha WinUI-t szeretnék használni?
Nem. A felhasználói felület vezérlői kódban hozhatók létre. A WinUI felhasználói felületének deklaratív XAML-korrektúra formájában történő ábrázolása azonban számos előnnyel jár, például továbbfejlesztett fejlesztői élmény.
Ha az UWP-ről WinUI-ra migrál, valószínűleg sok XAML-jelölőt és felhasználói felületet tartalmazó kódot használhat újra (de frissítenie kell a szintaxis egy részét). Ha a WPF-ről WinUI-ra migrál, sok fogalmat újra felhasználhat, de a vezérlőkészlet és az API-k eltérőek lesznek.
Rendelkezik a Visual Studio tervezőfelülettel/felhasználói felülettel a WinUI-hoz?
Még nem. Tisztában vagyunk azzal, hogy ez a WinUI fejlesztői élményében rést jelent. Az olyan eszközök, mint az XAML gyorstöltési számos esetben segíthetnek. A Windows App SDK 1.7-ben a WinUI-hoz készült Visual Studio felhasználói felület tervezőjén, de a funkció kiadásának ütemterve még nincs.
A Windows App SDK tartalmazza a WinUI 3-at?
Igen. A WinUI 3 a Windows App SDK részeként szállít.
A Windows App SDK tartalmazza a WinUI 2-t?
Nem. A WinUI 2 az UWP platform része.
A WinUI 2 és a WinUI 3 ugyanarra a technológiára épül?
Majdnem. Bár a WinUI 3 a WinUI 2 kódbázisból indult, különálló technológiák. A WinUI 2 és a WinUI 3 is XAML-alapú felhasználói felületi keretrendszer, amely a .NET és a C++ rendszeren is működik. Vegye figyelembe, hogy a WinUI 2 és a WinUI 3 nem kompatibilis egymással.
Használhatom a WinUI 3-at a Windows App SDK használata nélkül?
Nem. A WinUI 3 a Windows App SDK részeként szállít.
Használhatom a WinUI 3-at csomagolatlan alkalmazásokban?
Igen. A Windows App SDK összes technológiája csomagolatlan alkalmazásokban működik, beleértve a WinUI 3-at is.
Mi a különbség az XAML-szigetek és a WinUI 3 között?
Az XAML-szigetek lehetővé teszik, hogy a meglévő Win32 felhasználói felület mellett modern WinUI-vezérlőket is üzemeltetjen más keretrendszerekből, például a WinFormsból és a WPF-ből.
Ma az XAML-szigeteket legtöbb XAML és WinUI 2 vezérlő támogatja. További információért lásd Gazdagép WinRT XAML-vezérlőinek asztali alkalmazásokban (XAML-szigetek). A WinUI 3 vezérlők XAML-szigetek támogatása a Windows App SDK 1.4
Ha WinUI-alkalmazást hozok létre, az modern lesz a Windows 11-en és a Windows 10-en is?
Igen, az alkalmazás felhasználói felülete a Windows 11 és a Windows 10 támogatott verzióinak legújabb Fluent felhasználói felületi tervezési alapelveit örökli az 1809-es verzióig csomagolt és csomagolatlan forgatókönyvekben is.
Használhatok Mica- vagy Akril-hátteret a Windows App SDK-val készült alkalmazásokban?
Hol találhatók WinUI-minták?
Lásd: Minta és erőforrások. Néhány figyelemre méltó adattár:
- WindowsAppSDK-Samples: Bemutatja, hogyan használható bizonyos Windows App SDK API-készletek.
- WinUI 3 bemutatók: A Microsoft WinUI-bemutatói során használt bemutatókat tartalmazza.
- WinUI-katalógus: A WinUI és a Windows App SDK bemutatása. A WinUI-katalógust a Microsoft Storeis beszerezheti.
Ha már jelentős befektetést fektettem be a WPF-be, továbbra is használnom kell a WPF-et, vagy fontoljam meg a WinUI-ba való migrálást?
Ha már jelentős befektetést hajtott végre a WPF-ben, továbbra is használhatja a WPF-et a meglévő alkalmazásaihoz. A WPF egy kiforrott és stabil keretrendszer, amelyet a fejlesztők széles körben használnak a Windows asztali alkalmazások létrehozásához.
Fontolja meg a .NET frissítési segéd használatát a .NET-keretrendszer WPF-alkalmazásainak a legújabb .NET-platformra való migrálásához. A .NET Frissítési segéd egy olyan eszköz, amellyel a .NET-keretrendszer alkalmazásait a .NET legújabb támogatott verzióiba migrálhatja. A .NET frissítési segéd elemzi a meglévő kódbázist, és útmutatást nyújt a kód frissítéséhez.
Ha új WPF-alkalmazást készítek, az dátumozottnak fog tűnni a többi új Windows-alkalmazáshoz képest?
A WPF-alkalmazások .NET 9 vagy újabb verziójával történő fejlesztésekor meggyőződhet arról, hogy az alkalmazás megfelel a Windows 11 elegáns, modern megjelenésének. A WPF új Fluent-témája egy modern Windows 11-esztétikát mutat be a WPF-alkalmazások számára, beépített világos/sötét móddal és rendszerkoncentrikus színtámogatással. Ez a frissítés nemcsak modernizálja az alkalmazás megjelenését, hanem a kifinomult és összetartó felhasználói élmény biztosításával javítja a felhasználói előjegyzést.
A csapatom kényelmesen készít WinForms-alkalmazásokat, és megfelel az igényeinknek. Érdemes megfontolnunk a WinUI-ba vagy más keretrendszerbe való migrálást?
Ha csapata kényelmesen építi ki a WinForms-alkalmazásokat, és a WindForms megfelel az igényeinek, továbbra is használhatja a WinFormst a meglévő alkalmazásokhoz. A WinForms egy kiforrott és stabil keretrendszer, amelyet a fejlesztők széles körben használnak a Windows asztali alkalmazások létrehozásához.
A WinForms csapata számos funkciót fektet be, és aktív közreműködői közösséggel rendelkezik. A beruházások néhány jelenlegi területe a következők:
- Aszinkron támogatás gyakori vezérlőkkel
- Sötét mód
- Elrendezés rugalmassága
- Asztali biztonsági funkciók, például vágólap-hozzáférés
Platformfüggetlen natív fejlesztés
Milyen okai vannak a Windowst célzó, platformfüggetlen natív alkalmazások létrehozásának?
Ha több operációsrendszer-platformon is megcélozza a felhasználókat, a .NET MAUI vagy a React Native platformfüggetlen alkalmazásai számos előnyt biztosíthatnak:
- Reach: Platformfüggetlen alkalmazások létrehozása lehetővé teszi a felhasználók nagyobb közönségének elérését különböző platformokon.
- kód újrafelhasználása: Platformfüggetlen alkalmazások létrehozása lehetővé teszi a kód különböző platformokon való újrafelhasználását, csökkentve a fejlesztési időt és a költségeket. Rendkívül költséges lehet külön alkalmazásokat készíteni Windows, iOS, Android, macOS stb.
- Konzisztens felhasználói élmény: Platformfüggetlen alkalmazások létrehozása lehetővé teszi, hogy egységes felhasználói élményt biztosítson a különböző platformokon, biztosítva, hogy az alkalmazás minden eszközön jól nézzen ki és működjön.
- integráció: Platformfüggetlen alkalmazások létrehozása lehetővé teszi a különböző platformokkal és szolgáltatásokkal való integrációt, így átfogóbb felhasználói élményt biztosíthat.
Biztos vagyok benne, hogy a .NET MAUI-alkalmazások jól fognak futni Windows rendszeren?
A Windows
Hogyan biztosít a .NET MAUI natív eszköz API-kat minden platformon?
A .NET MAUI egyetlen .NET-felületet biztosít minden platformon, beleértve a Windowst, az iOS-t, az Androidot és a macOS-t is. A .NET MAUI több mint 60 platformspecifikus API-t absztraktál egyetlen platformfüggetlen API-vá, amelyet a .NET MAUI-alkalmazásban használhat. Ezek az API-k többek között a tároláshoz, a hálózatkezeléshez, az eszközspecifikus érzékelőkhöz való hozzáférést fedik le. Szükség esetén további platformspecifikus API-khoz is hozzáférhet függőséginjektálással az egyes platformok kódjának absztrakciójához.
Kezdhetek a WinUI-val, és később integrálhatom a .NET MAUI-t, ha végül platformfüggetlen forgatókönyveket szeretnék megcélzni?
Jelenleg nem. Bár a .NET MAUI-alkalmazások WinUI-t használnak Windows rendszeren való futtatáskor, javasoljuk, hogy kezdje a .NET MAUI-val vagy a React Native for Desktoppal, ha több platformot is meg kell céloznia.
Csapatunk erős webes előtérbeli fejlesztési készségekkel rendelkezik. Érdemes megfontolnunk a React Native for Desktop használatát?
Ha a csapata erős webes fejlesztési készségekkel rendelkezik, érdemes megfontolnia a React Native for Desktop használatát. A React Native for Desktop magában foglalja Windows és macOS keretrendszereket. A React Native mottója a "Learn once, write anywhere" (Tanuljon egyszer, bárhol írjon), ami azt jelenti, hogy meglévő webfejlesztési készségeivel natív Windows-alkalmazásokat hozhat létre a React Native használatával. React Native for Desktop egy nyílt forráskódú projekt, amely lehetővé teszi natív Windows- és macOS-alkalmazások készítését a React Native használatával. A React Native for Desktop olyan API-kat biztosít, amelyek lehetővé teszik az asztali operációs rendszerekre jellemző funkciók és képességek elérését a React natív alkalmazásaiban.
A csapat JavaScript-, TypeScript- és React-készségeit felhasználhatja a felhasználói felületi réteg létrehozásához, amely közvetlenül natív primitívek számára jelenik meg. Ez natív alkalmazásteljesítményt és hozzáférést biztosít a natív platform képességeihez.
További információ a React natív windowsos fejlesztésének első lépéseiről a React Native for Desktop dokumentációjában.
A React Native for Desktop más Windows-eszközöket is támogat?
A React natív alkalmazásai a Windows 10 és újabb verziók által támogatott összes eszközön üzembe helyezhetők, beleértve a PC-ket, táblagépeket, 2 az 1-ben, az Xboxot és a Vegyes valóságot.
Mit használjak, ha Windowson és Xboxon működő alkalmazásokat szeretnék létrehozni?
Ha az alkalmazásnak támogatnia kell az Xboxot, a HoloLenst vagy az IoT-t, javasoljuk az UWP használatát. A Windows App SDK nem támogatja ezeket a platformokat. A játékfejlesztéshez javasoljuk Microsoft Game Development Kithasználatát.
Mit kell használnom, ha Windowson és Surface Hubon működő alkalmazásokat szeretnék létrehozni?
Ha a Windows és a Surface Hubot is célozza, javasoljuk, hogy használja az UWP-t.
Hibrid és webes fejlesztés
Mik azok a hibrid alkalmazások, és miért érdemes megfontolni az összeállítást?
A hibrid alkalmazások a legjobb webes és natív alkalmazásfejlesztést ötvözik. Az alkalmazás magja olyan webes technológiákkal készült, mint a HTML, a CSS és a JavaScript, majd egy natív tárolóba burkolva, amely lehetővé teszi az alkalmazás számára bizonyos natív platformfunkciók és hardverek használatát. Alkalmazás-áruházakon keresztül is terjeszthetők.
A hibrid alkalmazások fő előnye, hogy lehetővé teszik egyetlen olyan alkalmazás összeállítását, amely több natív platformon és a weben is futtatható, csökkentve a fejlesztési időt és a költségeket. Néhány példa a hibrid alkalmazásfejlesztési platformokra:
- Elektron asztali alkalmazásokhoz
- Ionic mobilalkalmazásokhoz
- .NET MAUI Blazor hibrid platformfüggetlen alkalmazásokhoz
Hogyan hozhatok létre natív hangulatú progresszív webalkalmazásokat (PWA-kat) Windows rendszeren?
Lásd Webes fejlesztés Windows és Progresszív webalkalmazásokáttekintése című témakört.
Mi az a .NET MAUI Blazor hibrid alkalmazás?
A .NET MAUI használatával a Blazor-alkalmazások natív módon is futtathatók Windows, iOS, Android és macOS rendszeren. Ez azt jelenti, hogy létrehozhat olyan hibrid ügyfélalkalmazásokat, amelyek a Blazor és a .NET MAUI-összetevőket egyetlen natív ügyfélalkalmazásban egyesítik. Ez teljes hozzáférést biztosít a többi .NET MAUI-alkalmazás számára elérhető natív platformfunkciókhoz.
Ha többet szeretne megtudni arról, hogy a Blazor hogyan üzemeltethető egy .NET MAUI-alkalmazásban, olvassa el ASP.NET Core Blazor Hybrid.
Létre kell hozni a .NET MAUI hibrid alkalmazás webes összetevőit a Blazor használatával?
Nem, a .NET MAUI hibrid alkalmazás webes összetevőit nem kell létrehozni a Blazor használatával. A .NET 9-től kezdve a .NET MAUI egy HybridWebView vezérlőt biztosít, amellyel más JavaScript-felhasználói felületeket is üzemeltethet a natív alkalmazásban.
Ez azt jelenti, hogy használhatja az Angular, React, Vue vagy más HTML-& JavaScript-webalkalmazást, és üzemeltetheti azt a .NET MAUI-alkalmazásban. A hibrid vezérlő a C# és a JavaScript rétegek közötti interoptikát biztosít, így a JavaScript-függvényeket a C#-ból hívhatja meg, és fordítva.
Bármely más natív alkalmazástípus üzemeltethet hibrid Blazor-összetevőket?
Igen, a WPF- és WinForms-alkalmazások a Blazor hibrid összetevőit is üzemeltethetik. Ez lehetővé teszi, hogy modern webes felhasználói felületi összetevőket adjon hozzá a meglévő WPF- és WinForms-alkalmazásokhoz. Vegye figyelembe, hogy ez nem lehetséges a .NET-keretrendszerre épülő WPF- vagy WinForms-alkalmazások esetében.
A teljes alkalmazásomnak hibrid alkalmazásnak kell lennie, vagy kombinálhatom és egyeztethetem a natív és hibrid összetevőket?
Az alkalmazásban a natív és a hibrid összetevőket kombinálhatja és egyeztetheti. Létrehozhatja például az alkalmazás magját .NET MAUI-összetevőkkel, majd hibrid összetevőket adhat hozzá a további funkciók biztosításához. Ez lehetővé teszi mindkét világ legjobb kihasználását: a natív összetevők teljesítményét és képességeit, valamint a hibrid összetevők rugalmasságát és költségmegtakarítását.
Mik az én választási lehetőségem az épület . NET-alapú webalkalmazások, amelyek jól néznek ki a windowsos modern böngészőkben?
A webalkalmazások minden ügyfélalkalmazás-platformot a legszélesebb körben érhetnek el. Ha gyönyörű .NET-webalkalmazásokat szeretne létrehozni Windows rendszeren, több lehetősége is van:
- ASP.NET Core-alkalmazások a Razor Pages használatával
- ASP.NET Core MVC-alkalmazások
- ASP.NET Core Blazor-alkalmazások, amelyek a következő üzemeltetési modellekkel állnak rendelkezésre:
- Blazor WebAssembly-alkalmazások
- Blazor Server-alkalmazások
Vegye figyelembe, hogy a Blazor üzemeltetési modellje most már az összetevő szintjén konfigurálható. Így egy Blazor WebAssembly-összetevőt is üzemeltethet egy Blazor Server-alkalmazásban.
További információ ASP.NET Core fejlesztési lehetőségeiről a ASP.NET Core dokumentációjában.
Válasszon egy megközelítést, és ismerje meg a Microsoft befektetéseit
Olyan sok keretrendszer-lehetőség áll rendelkezésre a Windowst célzó alkalmazások létrehozásához! Hogyan dönthetek?
A Windows egy nyílt platform, amely számos technológiát támogat. Íme néhány feltétel, amely segíthet eldönteni, hogy melyik platformot használja:
- Windows-első vagy platformfüggetlen verziót készít?
- Van tapasztalata a .NET-tel kapcsolatban? JavaScript? Más nyelvek?
- Hozzá kell férnie a Windows-specifikus API-khoz?
- Melyik keretrendszer képességei felelnek meg a legjobban az alkalmazás követelményeinek?
- A többi döntési tényezőt a táblázat .
Ha üzleti alkalmazásokról van szó, a legtöbb csapat a meglévő készségek és a csapat számára kényelmes használat alapján szeretne választani.
Hogyan választhatom ki a webalkalmazásom legjobb fejlesztési megközelítését?
A webalkalmazás fejlesztési megközelítésének kiválasztásakor megfontolandó szempontok a következők:
- A Blazor az előtérbeli webalkalmazások .NET-tel való létrehozásához ajánlott. A Blazor használatával mostantól a teljes előtér- és háttérrendszert létrehozhatja .NET használatával, így időt és pénzt takaríthat meg. Különösen alkalmas a mai eszközök nagyvállalati üzletági alkalmazásaihoz.
- A JavaScript-webalkalmazásoknak akkor is van értelme, ha a csapat meglévő készségeit vagy JavaScript-befektetéseit szeretné használni, vagy ha integrálnia kell a meglévő JavaScript-kódtárakkal vagy -keretrendszerekkel.
- A régebbi keretrendszereket, például a Web Formst, az MVC-t vagy a Razor Pagest használó meglévő alkalmazások továbbra is támogatottak, és továbbra is fejleszthetők és karbantarthatók ezen keretrendszerek használatával.
Ki készít alkalmazásokat ma a WinUI-val?
Ma sok ügyfél épít a WinUI-val, beleértve az Adobe-t és az Apple-t is:
- Adobe Fresco, a Windows ingyenes rajz- és festőalkalmazása.
- Az Apple létrehozta a Apple Music, Apple TV, és Apple Devices alkalmazásokat a WinUI-val és a Windows App SDK-val.
A Microsoft számos alkalmazást is létrehozott a WinUI-val, köztük a Windows 11 Fájlkezelőt és a Fényképek alkalmazást is.
Ki készít ma .NET MAUI-alkalmazásokat?
Sok ügyfél a .NET MAUI-t használja a platformfüggetlen alkalmazások készítéséhez, beleértve a Microsoftot is. A Microsoft Azure
Megtudhatja, hogy ki más készít alkalmazásokat a .NET MAUI-val a .NET-ügyfelek webhelyen.
Ki készít ma WPF-alkalmazásokat?
A Microsoft Visual Studio felhasználói felületének többsége a WPF-sel készült. A Visual Studio IDE kiváló példa egy összetett, nagy teljesítményű WPF-alkalmazásra.
Ki készít ma Blazor-alkalmazásokat?
A GE Digital FlightPulse légitársaság rendszere az érzékelőadatokat és az elemzéseket a pilóták kezébe helyezi a biztonság és a hatékonyság javítása érdekében. A pilóták által látottak háttérkonfigurációja a Blazorral készült.
További Blazor-ügyféltörténeteket a .NET-webhelyen.
UWP és WinUI 2
Terjeszthetők UWP-alkalmazások a Microsoft Store-on kívül?
Igen. Ha a MSIX csomag aláírt, az aláíró tanúsítványnak érvényesnek és megbízhatónak kell lennie a céleszközön.
Keverhetem az UWP XAML felhasználói felület vezérlőit Win32, WPF vagy WinForms felhasználói felület vezérlőkkel?
Igen - XAML-szigetek lehetővé teszi ezt. További információ a XAML-szigetekről.
Csomagolás, üzembe helyezés és frissítések
Mi a különbség a külső helyen csomagolt, csomagolatlan és csomagolt alkalmazások között?
A csomagolt, csomagolatlan és külső hellyel csomagolt alkalmazások definícióit a Üzembe helyezés áttekintésecímű témakörben talál. Ez a témakör az egyes lehetőségek előnyeit és hátrányait is ismerteti.
A WinUI-alkalmazásom automatikusan frissül a végfelhasználók számára?
A WinUI-alkalmazásokat az Áruházban, egy .appinstaller-fájlban, illetve a meglévő MSI- vagy setup.exe-csomagban lehet kézbesíteni. Az Áruház és az AppInstaller támogatja az automatikus frissítéseket azon végfelhasználók számára, akik engedélyezve vannak az automatikus frissítés, de az MSI/setup.exe alkalmazásnak saját frissítőt kell rendelkeznie.
Használhatom a Windows App SDK-t az MSBuild használata nélkül?
Általánosságban elmondható, hogy nem. A WinUI és a Windows App SDK használatához MSBuildszükséges, ezért Visual Studio előfeltétele a WinUI-val és a Windows App SDK-val való fejlesztésnek. Bár technikailag lehetséges olyan Windows App SDK-alkalmazások létrehozása, amelyek más eszközláncokkal nem használják a WinUI-t, ez nem támogatott.
Teljesítmény és optimalizálás
Mit tehetek annak érdekében, hogy a Windows-alkalmazásom nagyszerűen érezze magát a végfelhasználók számára?
Kompatibilitás
A felhasználóimnak valaha is frissíteniük kell a Windowst a WinUI-alkalmazásom használatához?
Azok a felhasználók, akik windows 10-es, 1809-es vagy újabb verzióval rendelkeznek, az operációs rendszer frissítése nélkül telepíthetik a WinUI-alkalmazásokat.
Megcélzhatom az Arm64-et a WinUI-alkalmazásommal?
Igen.
Elavulások és migrálások
Az UWP/WinUI 2 elavult?
Nem. Az UWP és a WinUI 2 továbbra is támogatott, és hibákat, megbízhatóságot és biztonsági javításokat fog kapni. A legtöbb új funkció és képesség azonban csak a WinUI 3-hoz lesz hozzáadva.
Jegyzet
A .NET 9 UWP-támogatása előzetes verzióban érhető el. Ez az előzetes verziójú támogatás lehetőséget biztosít az UWP-alkalmazások számára a .NET legújabb verziójának használatával történő modernizálásra.
A .NET 9 UWP támogatásának két fő célja van. Először is jobb migrálási útvonalat biztosít azoknak az UWP-fejlesztőknek, akik a WinUI 3-ra szeretnének migrálni. Másodszor, lehetővé teszi a fejlesztők számára, hogy eltávolítsák a .NET natív függőségeit, így a legújabb .NET- és C#-funkciók előnyeit élvezhetik, függetlenül attól, hogy milyen az alkalmazásmodelljük.
További információ: UWP-alkalmazás modernizálása előzetes verziójú UWP-támogatással a .NET 9 és natív AOT blogbejegyzésben.
Mikor kell migrálnom egy UWP/WinUI 2 alkalmazást a WinUI 3-ba?
Az UWP-fejlesztőknek nem kell nyomást gyakorolniuk az alkalmazásuk WinUI 3-ra való migrálására, ha elégedettek az UWP-vel és annak funkciókészletével. Egyes alkalmazások esetében a legjobb választás lehet, ha soha nem migrál. Azoknak az alkalmazásoknak, amelyek a Microsoft legújabb Windows-platformjának és .NET-befektetéseinek előnyeit szeretnék kihasználni, érdemes lehet a Windows App SDK-ra költözni. Lásd: Migrálás UWP-ről a Windows App SDK).
Mikor *ne* migráljak egy UWP + WinUI 2 alkalmazást a WinUI 3-ba?
Javasoljuk, hogy továbbra is használja az UWP-t, ha Xbox, Surface Hub vagy HoloLens rendszerre készül.
Elavult a WPF?
Nem. A WPF továbbra is támogatott, ajánlott, és funkciófrissítéseket is kap. Tekintse meg a WPF-ütemtervet a GitHub.
Elavult a WinForms?
Nem. A WinForms továbbra is támogatott, és funkciófrissítéseket kap. Tekintse meg a Windows Forms ütemtervét a GitHubon.
Elavult a Windows Futtatókörnyezet (WinRT) ?
Nem. WinRT olyan alkalmazás bináris felületére (ABI) hivatkozik, amely lehetővé teszi a több nyelv közötti interoptikát. A WinRT a COM fejlődése. A Windows App SDK a legtöbb funkcióját a WinRT API-kon keresztül biztosítja.
Kibocsátási megjegyzések
Hol találhatók a Windows App SDK kibocsátási megjegyzései?
Lásd Stabil csatorna kibocsátási megjegyzéseit és Csatorna előzetes verzió kibocsátási megjegyzéseit.