Aracılığıyla paylaş


Windows App Geliştirme hakkında Sık Sorulan Sorular

Bu SSS, projeleriniz için doğru çerçeveyi seçme yönergeleri de dahil olmak üzere Windows uygulama geliştirme hakkında sık sorulan soruların yanıtlarını sağlar. Ele alınan konular:

  • Başlarken ve Windows uygulama geliştirme ortamı.
  • WinUI 3, Windows Presentation Foundation (WPF) ve Windows Forms (WinForms) ile yerel Yalnızca Windows uygulaması geliştirme.
  • Windows Yazılım Geliştirme Seti (SDK) ve Windows App SDK.
  • Platformlar arası geliştirme stratejinizin bir parçası olarak Windows'un hedeflenmesi.
  • .NET MAUI, Blazor ve ASP.NET Core ile karma ve web uygulaması geliştirme.
  • Microsoft'un yatırımlarını anlamaya çalışırken bir strateji seçme.

Windows app geliştirme ortamı

Windows geliştirme teknolojilerine doğrudan bir genel bakış nerede bulabilirim?

Windows geliştiricileri için günümüzün seçeneklerinin harika bir incelemesi için en son Windows Dev Chat bölümünü, WinUI, .NET MAUI, React Native, Blazor ve Aşamalı Web Apps (PWAs) hakkında konuştukları ideal geliştirme platformunuzu izleyin.

Ayrıca Windows geliştiricileri için uygulama geliştirme seçeneklerine genel bakışa da bakabilirsiniz.

Bulut hizmetleri çağında istemci uygulaması geliştirme neden modern dijital dönüşüm için hala kritik öneme sahiptir?

cloud services çağında istemci uygulaması geliştirme, modern dijital dönüşümün kritik bir bileşeni olmaya devam etmektedir. Geliştiriciler için istemci uygulamaları oluşturmak yalnızca erişim için değil, kullanıcı cihazlarında duyarlı ve anlamlı etkileşimler sunmak için de gereklidir.

İstemci uygulamalarının önemli olmasının nedeni şu şekildedir:

  • Device Reach: Dünya çapında 1,5 milyardan fazla Windows cihazı ve 5 milyardan fazla Android ve iOS cihazıyla istemci uygulamaları, uygulamalarınızı doğrudan kendi cihazlarındaki kullanıcılara getirmenizi sağlar.
  • Ağ Geçidinden Akıllı Hizmetlere: İstemci uygulamaları genellikle kullanıcıların hizmetlerinizle ilk etkileşimleridir. Akıllı özellikleri sergilemenize ve ürününüzü diğerlerinden ayırt etmenizi sağlayan zengin, etkileşimli bir arabirim sunar.
  • Bulut Entegrasyonu ile Ölçeklenebilirlik: İyi entegre edilmiş bir istemci uygulaması arka uç bulut hizmetleriyle zahmetsizce senkronize olabilir ve kullanıcı tabanınız büyüdükçe gerçek zamanlı veri erişimi ve sorunsuz ölçeklenebilirlik sağlar.
  • Artırılmış Üretkenlik ve Kullanıcı Bağlılığı: İyi tasarlanmış bir uygulama üretkenliği artırabilir ve kullanıcıları zaman içinde ürününüzle veya hizmetinizle etkileşimde tutabilir.

Yalnızca Windows için yerel uygulama geliştirme

> Windows App SDK nedir?

Windows App SDK, güzel, modern, geriye dönük uyumlu (Windows 10 1809'a kadar) masaüstü uygulamaları oluşturmanıza olanak tanıyan bir Windows uygulama geliştirme platformudur. WinUI, Windows App SDK ile birlikte gelen kullanıcı arabirimi çerçevesidir.

Windows App SDK ile Windows SDK arasındaki fark nedir?

Her ikisi de Windows uygulamaları oluşturmanıza olanak sağlayan yazılım geliştirme setleridir (SDK'lar).

Windows App SDK, Windows sürümlerinde (Windows 10 1809'a kadar) yüklenebilen modern masaüstü uygulamaları oluşturmanıza olanak tanıyan yeni bir geliştirme platformudur. Windows App SDK ile derleme yaparken en son Windows geliştirme platformu özellikleri kullanılabilir. Windows App SDK WinUI'yi içerir.

Windows SDK, UWP uygulamaları ve Win32/masaüstü uygulamaları oluşturmanıza olanak tanıyan bir geliştirme platformudur. İşletim sisteminin belirli sürümleriyle birleştirilmiş Windows API'leri etrafında tasarlanmıştır.

Windows App SDK Windows SDK yerini almaz. Bunun yerine, Windows App SDK Windows SDK'sını tamamlar. Windows SDK'sı kullanılarak zaten erişilebilir olan zengin Windows işletim sistemi API'leri kataloğu etrafında, işletim sisteminden bağımsız, kullanışlı bir soyutlama sağlar. Windows App SDK ile oluşturulan uygulamalar, işlevsellik gereksinimlerine bağlı olarak Windows SDK API'lerini kullanmaya devam edebilir. Zaman içinde daha fazla Windows SDK işlevselliği Windows App SDK'ya taşınacak.

Yalnızca Windows uygulaması geliştirmek için yeni bir ekip oluşturuyorum. Neden WinUI, WPF veya WinForms?

Yalnızca Windows uygulamanız için yerel bir Windows çerçevesi seçmenin bazı nedenleri şunlardır:

  • Performans: Yerel Windows çerçeveleri, modern Windows donanımlarından yararlanacak şekilde iyileştirilmiştir ve hızlı ve hızlı yanıt veren kullanıcı deneyimleri sağlar.
  • Entegrasyon: Windows, yalnızca Windows'ta kullanılabilen gelişmiş deneyimlere olanak tanıyan çok çeşitli API'lerle birlikte gelir. Yerel çerçeveler, bu özellikler ve API'lerle derin tümleştirme sağlar.
  • Yerel kullanıcı deneyimi: Yerel çerçeveler, Windows cihazlarında tutarlı bir deneyim sağlayarak uygulamanızın her yerde harika görünmesini ve çalışmasını sağlar.
  • Çevrimdışı destek: Yerel çerçeveler çevrimdışı senaryoları destekler ve uygulamaların İnternet bağlantısı olmadan bile çalışmasını sağlar.
  • Monetization: Yerel çerçeveler Microsoft tarafından etkin bir şekilde korunur ve desteklenir ve en son güncelleştirmelere ve özelliklere access sağlar.
Microsoft'un Windows app geliştirmeye yönelik en son yatırımlarını kullanmak için ne tür bir çerçeve kullanmalıyım?

Yeni bir Yalnızca Windows uygulaması oluşturuyorsanız WinUI kullanmanızı öneririz. WinUI, Windows app geliştirme için en son yerel ui çerçevesidir ve çok çeşitli Windows cihazlarında çalışacak şekilde tasarlanmıştır. Görsel açıdan çekici ve etkileşimli Windows uygulamaları oluşturmaya yönelik modern ve esnek bir kullanıcı arabirimi çerçevesi sağlar. WinUI, Windows App SDK bir parçasıdır ve windows'un en son sürümleriyle en iyi şekilde çalışır.

Mevcut Windows uygulamamda Windows App SDK / WinUI kullanabilir miyim?

WinUI (ui çerçevesi) Windows App SDK (Windows platformu geliştirme çerçevesi) ile birlikte sunulur.

Uygulama kullanıcı arabirimi çerçevesini tamamen geçirmeye hazır olmadığı sürece WinUI genel olarak kullanılamaz. XAML adaları adlı bir özellik, winUI içeriğini diğer ui çerçevelerinde (WPF, Win32) barındırmak için geliştirme aşamasındadır.

mevcut uygulamanın nasıl oluşturulduğuna bağlı olarak, Windows App SDK öğeleri genellikle masaüstü uygulamalarında kullanılabilir. UWP uygulamaları Windows App SDK tarafından desteklenmez.

Bu, WPF/MFC/WinForms uygulamalarının WinUI ile ilgisi olmayan Windows App SDK API'leri kullanabileceği anlamına gelir. Örnekler arasında Uygulama Yaşam Döngüsü, Pencereleme ve Bilgilendirme Bildirimleri yer almaktadır.

Daha fazla bilgi için bkz. Mevcut bir projede Windows App SDK'sini kullanma.

WinUI uygulamaları oluşturmak için Visual Studio kullanmam gerekiyor mu?

WinUI geliştirmesi için Visual Studio 2026 veya üzerini kullanmanız kesinlikle önerilir. En son Visual Studio sürümleri, Hot Reload gibi zengin geliştirme özellikleri sunar ve kurulumu kolaylaştıran WinUI uygulama geliştirme iş yükü içerir.

Diğer IDE'ler ve iş akışları çalışabilir, ancak Visual Studio şu anda WinUI için resmi olarak desteklenen tek IDE'dir. XAML veya WinUI projelerini derlemek için MSBuild'in gerekli olduğunu unutmayın.

Uygulamamı çalıştırırken "DLL yüklenemedi'Microsoft.ui.xaml.dll'" hatası alıyorum. Nasıl düzeltebilirim?

Bu hata genellikle Windows Uygulama SDK'sı çalışma zamanının makineye yüklenmediği paketlenmemiş uygulama senaryolarında oluşur. Aşağıdaki işlemi deneyin:

  • Paketlenmiş bir uygulama çalıştırıyorsanız (önerilen varsayılan ayar), MsixPackage başlatma profili seçiliyken (düz yürütülebilir profil değil) Visual Studio üzerinden başlatma yaptığınızdan emin olun. MSIX paketleme adımı gerekli çalışma zamanı bileşenlerini yükler.
  • Paketlenmemiş bir uygulama çalıştırıyorsanız, uygulamayı Visual Studio dışında çalıştırmadan önce Windows Uygulama SDK'sı çalışma zamanını ayrı olarak yüklemeniz gerekir.
  • Geliştirme sırasında hata oluşursa, öğesini .csproj açın ve paketleme yapılandırmanızın dağıtım modelinizle eşleşip eşleşmediğini onaylayın: paketlenmiş uygulamalar için özelliği atlayın <WindowsPackageType> (veya varsayılanda bırakın) ve MSIX paketini derleyin/çalıştırın; paketlenmemiş uygulamalar için başlangıçta <WindowsPackageType>None</WindowsPackageType> çağırdığınızdan Bootstrap.Initialize() emin olun.

Dağıtım gereksinimleri hakkında daha fazla bilgi için bkz. Windows Uygulama SDK'sını kullanan uygulamaları dağıtma .

UWP için WinUI ile WinUI arasındaki fark nedir?

WinUI (eski adıyla WinUI 3), Windows app geliştirme için en son yerel kullanıcı arabirimi çerçevesidir. Görsel açıdan çekici ve etkileşimli Windows uygulamaları oluşturmaya yönelik modern ve esnek bir kullanıcı arabirimi çerçevesi sağlar. WinUI, Windows App SDK bir parçasıdır ve windows'un en son sürümleriyle en iyi şekilde çalışır.

UWP için WinUI (daha önce WinUI 2 olarak da adlandırılır), UWP'nin üzerine kurulu bir kullanıcı arabirimi denetimleri ve stilleri kümesidir. UWP uygulamaları için modern bir görünüm ve hissiyat sağlar ve Windows 10 için tasarlanmıştır.

Windows App SDK ve WinUI kullanarak uygulama oluştururken "WinUI uygulaması" mı oluşturuyorum?

Evet — "WinUI uygulaması" önerilen terimdir. UWP için WinUI bir uygulama türü değil, UWP uygulamalarında kullanılan bir bileşen kümesi olduğundan WinUI uygulamaları "WinUI uygulamaları" olarak adlandırılır.

UWP için WinUI bileşenlerini WinUI bileşenleriyle aşamalı olarak değiştirerek UWP denetimleri için WinUI ile UWP uygulamamı artımlı olarak WinUI'ye güncelleştirebilir miyim?

Hayır. Windows App SDK UWP uygulamalarında kullanılamaz ve UWP için WinUI, WinUI ile karıştırılamaz. Bkz. UWP'den Windows App SDK'ye Geçiş Yap.

UWP uygulamasını WinUI'ye geçirmek ne kadar zor?

UI bileşenlerinin geçirilmesi genellikle basittir (C# ve C++/WinRTiçin). Aksi takdirde, geçiş maliyeti öncelikli olarak şunları temel alır:

  1. Project dosyası ve MSBuild özelleştirme: Geçiş eforu, gelişmiş MSBuild kullanımına bağlı olarak değişir.
  2. .NET kullanan .NET API geçişi: UWP uygulamalarının .NET 6 veya sonraki bir sürüme taşınması gerekir. Çoğu durumda, .NET 6'yı benimsemek basittir.
  3. UI bileşen kitaplıkları: Kitaplıkların WinUI'yi hedefleyen sürümleri olmalıdır.
  4. UWP uygulaması artık yerine geçen C++/CX içinde yazılmışsa, bazı kaynak kodu taşıma işlemleri gereklidir. Bkz. C++/CX'ten C++/WinRT'ye Geçiş.

Daha fazla bilgi için bkz. UWP'den Windows App SDK'ye Geçiş.

Mağaza'da mevcut bir UWP uygulamam varsa, aynı tanımlayıcıları kullanarak yeni bir paketlenmiş WinUI uygulaması yayımlayabilir miyim?

Evet, yükseltilmiş uygulamalar uygulama kimliği güncelleştirilmeden yayımlanabilir. Eski sürümün kullanıcıları yeni sürüme güncelleştirilir. Bu yalnızca masaüstü uygulamaları için geçerlidir. Xbox, HoloLens ve Surface Hub uygulamaları WinUI'ye geçirilemez.

WinUI uygulamamı nasıl paketler ve dağıtırım?

Bkz. Dağıtıma genel bakış.

Windows App SDK geçiş kılavuzlarını nerede bulabilirim?

Bkz. UWP'den Windows App SDK'ye Geçiş Yap.

WinUI kullanmak istersem XAML işaretlemesi kullanmam gerekir mi?

Hayır. Kullanıcı arabirimi denetimleri kodda oluşturulabilir. Ancak, bildirim temelli XAML işaretlemesinde kullanıcı arabirimini temsil etmek, gelişmiş bir geliştirici deneyimi de dahil olmak üzere birçok avantaj sağlar.

  • UWP'den WinUI'ye geçiş: Bazı söz dizimi ayarlamaları gerekse de birçok XAML ve UI bileşeni yeniden kullanılabilir.
  • WPF'den WinUI'ye geçiş: Birçok kavram yerine gelir, ancak denetim kümesi ve API'ler farklılık gösterir.
Visual Studio, WinUI için bir tasarım yüzeyi / kullanıcı arabirimi tasarımcısına sahip mi?

Henüz değil. Bu, WinUI geliştirici deneyiminde bilinen bir boşluk. XAML Hot Reload gibi araçlar birçok senaryoda yardımcı olabilir. Visual Studio'da WinUI için bir kullanıcı arabirimi tasarımcısı üzerinde çalışma, Windows App SDK 1.7 içinde başladı, ancak bu tasarımcının piyasaya sürülmesi için henüz bir zaman çizelgesi yok.

Windows App SDK, WinUI'yi içeriyor mu?

Evet. WinUI, Windows App SDK bir parçası olarak kullanıma hazır.

Windows App SDK, UWP için WinUI'yi içeriyor mu?

Hayır. UWP için WinUI, UWP platformunun bir parçasıdır.

UWP ve WinUI için WinUI aynı teknoloji üzerinde mi oluşturulmuş?

** Tam olarak değil. WinUI başlangıçta UWP kod tabanı için WinUI'den başlasa da, bunlar farklı teknolojilerdir. her ikisi de .NET ve C++ arasında çalışan XAML tabanlı UI çerçeveleridir, ancak UWP ve WinUI için WinUI birbiriyle uyumlu değildir.

Windows App SDK kullanmadan WinUI'i kullanabilir miyim?

Hayır. WinUI, Windows App SDK bir parçası olarak kullanıma hazır.

WinUI'yi paketlenmemiş bir uygulamada kullanabilir miyim?

Evet. WinUI dahil olmak üzere Windows App SDK tüm teknolojiler paketlenmemiş uygulamalarda çalışır.

XAML Adaları ile WinUI arasındaki fark nedir?

XAML Adaları, WinForms ve WPF gibi diğer çerçevelerden mevcut Win32 kullanıcı arabirimiyle birlikte modern XAML tabanlı denetimleri barındırmanıza olanak sağlar.

Bugün XAML Adaları, UWP denetimleri için çoğu sistem XAML'sini ve WinUI'yi destekler. Daha fazla ayrıntı için bkz. Masaüstü uygulamalarında (XAML Adaları) WinRT XAML denetimlerini barındırma . WinUI denetimlerini barındırma desteği Windows App SDK 1.4'dan itibaren kullanılabilir.

WinUI uygulaması oluşturursam, hem Windows 11'de hem de Windows 10'da modern görünür mü?

Evet. Uygulamanızın kullanıcı arabirimi, hem paketlenmiş hem de paketlenmemiş senaryolarda sürüm 1809'a kadar desteklenen tüm Windows 11 ve Windows 10 sürümlerindeki en son Fluent UI tasarım ilkelerini devralır.

Windows App SDK?

Evet. Windows 11 için masaüstü uygulamalarında Mica veya Akrilik malzemelerini uygulamaya bakın.

WinUI örneklerini nerede bulabilirim?

bkz. Örnek ve kaynaklar. Bazı önemli depolar:

Zaten WPF yoğun yatırım yapmışsam, WPF kullanmaya devam etmeli veya WinUI'ye geçiş yapmayı düşünmeli miyim?

zaten WPF çok fazla yatırım yaptıysanız, mevcut uygulamalar için kullanmaya devam edebilirsiniz. WPF, Windows masaüstü uygulamaları oluşturmak için yaygın olarak kullanılan olgun ve kararlı bir çerçevedir.

.NET Framework WPF uygulamalarını en son .NET platformuna geçirmek için .NET Yükseltme Yardımcısı kullanmayı göz önünde bulundurun. Kod tabanınızı analiz eder ve güncelleştirme konusunda rehberlik sağlar.

Yeni bir WPF uygulaması oluşturursam, diğer yeni Windows uygulamalarıyla karşılaştırıldığında eski görünür mü?

.NET 9 veya üzeri bir WPF uygulaması geliştirirken uygulamanızın Windows 11 şık ve modern görünümüyle eşleştiğinden emin olabilirsiniz. WPF için yeni Fluent teması, tümleşik Açık/Koyu mod ve sistem vurgu rengi desteği ile çağdaş Windows 11 estetik bir görünüme sahiptir. Bu, uygulamanızın görünümünü modernleştirir ve şık, uyumlu bir kullanıcı deneyimi sunar.

Ekibim WinForms uygulamalarını rahatça oluşturuyor ve ihtiyaçlarımıza uygun. WinUI'ye veya başka bir çerçeveye geçiş yapmayı düşünmeli miyiz?

WinForms gereksinimlerinizi karşılıyorsa ve ekibiniz bu gereksinimleri karşılıyorsa, mevcut uygulamalar için WinForms'ı kullanmaya devam edebilirsiniz. WinForms, Windows masaüstü geliştirme için yaygın olarak kullanılan olgun ve kararlı bir çerçevedir.

WinForms ekibi platforma yatırım yapmaya devam ediyor. Yatırımın bazı geçerli alanları şunlardır:

  • Ortak denetimler için zaman uyumsuz destek
  • Koyu modu
  • Düzen esnekliği
  • Pano erişimi gibi masaüstü güvenlik özellikleri

Platformlar arası yerel geliştirme

Windows'a yönelik platformlar arası, yerel uygulamalar oluşturmanın bazı nedenleri nelerdir?

Kullanıcıları birden çok işletim sistemi platformunda hedeflediyseniz .NET MAUI veya React Native ile platformlar arası uygulamalar oluşturmak çeşitli avantajlar sunabilir:

  • Ulaşmak: Platformlar arası uygulamalar farklı cihazlarda ve işletim sistemlerinde daha büyük bir hedef kitleye ulaşır.
  • Kodu yeniden kullanma: Kodun platformlar arasında yeniden kullanılabilir olması geliştirme süresini ve maliyetini azaltır. Windows, Android, iOS ve macOS için ayrı uygulamalar oluşturmak çok pahalı olabilir.
  • Tutarlı kullanıcı deneyimi: Platformlar arası çerçeveler, platformlar arasında tutarlı bir genel görünüm sağlamaya yardımcı olur.
  • Entegrasyon: Platformlar arası uygulamalar, kapsamlı bir deneyim sunmak için platforma özgü hizmetlerle tümleştirmeye devam edebilir.
.NET MAUI uygulamalarının Windows'ta iyi çalışacağından emin olabilir miyim?

Windows için bir .NET MAUI uygulaması oluşturduğunuzda çıkış bir WinUI uygulamasıdır. Geliştirme sırasında .NET MAUI, platformlar arasında tek bir .NET deneyimi sunar, ancak arka planda platforma özgü kodlar oluşturur. Bu, .NET MAUI uygulamalarının her platformda iyi performans göstermesini ve yerel bir kullanıcı deneyimi sunmasını sağlar.

MAUI.NET her platformda yerel cihaz API'leri nasıl sağlayabilir?

.NET MAUI, Windows, iOS, Android ve macOS genelinde birleşik bir .NET deneyimi sağlar. 60'ın üzerinde platforma özgü API'yi storage, ağ ve cihaz algılayıcıları gibi alanları kapsayan tek bir platformlar arası API kümesine soyutlar. Platform başına özel uygulamalar sağlamak için bağımlılık ekleme kullanılarak platforma özgü ek API'lere de erişilebilir.

WinUI ile başlayıp sonunda platformlar arası senaryoları hedeflemek istersem MAUI .NET tümleştirebilir miyim?

Şu anda yok. .NET MAUI, Windows üzerinde çalışırken WinUI kullansa da birden çok platformu hedeflemeyi bekleyen ekiplerin .NET MAUI veya Masaüstü için React Native ile başlaması gerekir.

Ekibimiz güçlü web ön uç geliştirme becerilerine sahiptir. Masaüstü için React Native kullanmayı düşünmeli miyiz?

Güçlü web geliştirme deneyimine sahip ekipler, Masaüstü için React Native'i göz önünde bulundurmak isteyebilir. Windows için React Native ve macOS içerir. "Bir kez öğren, her yere yaz" yaklaşımıyla, yerel Windows ve macOS uygulamaları oluşturmak için mevcut JavaScript, TypeScript ve React becerileri kullanılabilir.

Desktop için React Native, kullanıcı arabirimini doğrudan yerel temel öğelere işleyip yerel performans ve platform özellikleri sunar.

Başlamak için React Native for Desktop belgelerine bakın.

React Native for Desktop tarafından desteklenen başka Windows cihazları var mı?

React Native uygulamaları bilgisayarlar, tabletler, 2'si bir arada cihazlar, Xbox ve mixed reality cihazları dahil olmak üzere Windows 10 ve üzeri tarafından desteklenen tüm cihazlara dağıtılabilir.

Windows ve Xbox üzerinde çalışan uygulamalar oluşturmak istiyorsam ne kullanmalıyım?

Uygulamanızın Xbox, HoloLens veya IoT'yi desteklemesi gerekiyorsa UWP önerilir. Windows App SDK bu platformları desteklemez. Oyun geliştirme için Microsoft Game Development Kit kullanın.

Windows ve Surface Hub'da çalışan uygulamalar oluşturmak istersem ne kullanmalıyım?

Hem Windows hem de Surface Hub'ı hedeflediyseniz UWP önerilir.

Karma ve web geliştirme

Karma uygulamalar nedir ve neden bir tane oluşturmayı düşünmeliyim?

Karma uygulamalar, web ve yerel uygulama geliştirmenin en iyilerini harmanlar. Çekirdekleri HTML, CSS ve JavaScript gibi web teknolojileri kullanılarak oluşturulur ve belirli yerel platform özelliklerine ve donanımlarına access sağlayan yerel bir kapsayıcıya sarmalanır. Bunlar uygulama mağazaları aracılığıyla da dağıtılabilir.

Bunun temel avantajı, karma uygulamaların birden çok yerel platformda ve web'de çalışabilen tek bir uygulama oluşturmanıza olanak tanıyarak geliştirme süresini ve maliyetini azaltmanızdır. Karma uygulama geliştirme platformlarının örnekleri şunlardır:

  • Masaüstü uygulamaları için Elektron
  • Mobil uygulamalar için Ionic
  • .NET platformlar arası uygulamalar için MAUI Blazor Hybrid
Windows üzerinde yerel hissi veren aşamalı web uygulamaları (PWA) nasıl geliştirebilirim?

Bkz. Windows'ta Web geliştirme ve Progressive Web Apps Genel Bakış.

.NET MAUI Blazor hibrit uygulama nedir?

.NET MAUI ile Blazor uygulamaları Windows, iOS, Android ve macOS'ta yerel olarak çalıştırılabilir. Bu, Blazor ve .NET MAUI bileşenlerini tek bir yerel istemci uygulamasında birleştiren karma istemci uygulamaları oluşturmanıza olanak tanır ve yerel platform özelliklerine tam access sağlar.

daha fazla bilgi için bkz. ASP.NET Core Blazor Hybrid.

.NET MAUI hibrit uygulamasının web bileşenlerinin Blazor ile oluşturulması gerekir mi?

Hayır. .NET 9'dan başlayarak .NET MAUI, yerel bir uygulamada diğer JavaScript tabanlı URI'leri barındırmaya olanak tanıyan bir HybridWebView denetimi içerir.

Bu, .NET MAUI uygulamasında Angular, React, Vue veya diğer HTML/JavaScript uygulamalarını barındırmanıza olanak tanır. Karma denetim C# ile JavaScript arasında birlikte çalışma sağlar, böylece C# kodu JavaScript işlevlerini çağırabilir ve tam tersi de geçerlidir.

Diğer yerel uygulama türleri Blazor karma bileşenlerini barındırabilir mi?

Evet. WPF ve WinForms uygulamaları blazor karma bileşenlerini de barındırarak mevcut uygulamalara modern web kullanıcı arabirimi eklenmesini sağlayabilir. Bu, .NET Framework üzerinde oluşturulan WPF veya WinForms uygulamaları için desteklenmez.

Tüm uygulamamın karma bir uygulama olması mı gerekiyor yoksa yerel ve karma bileşenleri karıştırıp eşleştirebilir miyim?

Yerel ve karma bileşenler bir uygulama içinde karıştırılabilir. Örneğin, karma bileşenler ek işlevler sağlarken uygulamanın çekirdeği .NET MAUI bileşenleriyle oluşturulabilir. Bu, yerel bileşenlerin performansını ve özelliklerini hibrit bileşenlerin esnekliği ve maliyet verimliliğiyle birleştirmeye olanak tanır.

Windows'ta modern tarayıcılarda harika görünen .NET tabanlı web apps oluşturmaya yönelik seçeneklerim nelerdir?

Web apps herhangi bir istemci uygulama platformuna en geniş erişimi sunar. Güzel .NET web apps oluşturma seçenekleri şunlardır:

  • ASP.NET Core uygulamaları Razor Sayfaları ile
  • ASP.NET Core MVC uygulamaları
  • ASP.NET Core Blazor uygulamaları, barındırma modeli seçenekleriyle:
    • Blazor WebAssembly
    • Blazor Server

Blazor barındırma modelleri artık bileşen düzeyinde yapılandırılabilir ve Blazor Server uygulamasında Blazor WebAssembly bileşeni barındırma gibi senaryolar etkinleştirilebilir.

Daha fazla bilgi için ASP.NET Core belgelerine bakın.

Bir yaklaşım seçin ve Microsoft'un yatırımlarını anlayın

Windows'a yönelik uygulamalar oluşturmak için birçok framework seçeneği var! Nasıl karar verebilirim?

Windows, birçok teknolojiyi destekleyen açık bir platformdur. Platform seçmenize yardımcı olabilecek bazı ölçütler şunlardır:

  • Windows öncelikli mi yoksa platformlar arası mı oluşturuyorsunuz?
  • .NET, JavaScript, başka bir şey gibi hangi dillere veya becerilere sahipsiniz?
  • Windows'a özgü API'lere access gerekiyor mu?
  • Uygulamanızın gereksinimlerine en uygun çerçeve özellikleri hangisidir?
  • Ek karşılaştırma faktörleri için bu tabloya bakın.

Birçok iş uygulaması için ekipler genellikle mevcut becerilere ve ekibin en rahat kullandığı özelliklere göre seçim yapmayı tercih eder.

Web uygulamam için en iyi geliştirme yaklaşımını nasıl seçerim?

Web uygulamanız için bir geliştirme yaklaşımı seçerken aşağıdakileri göz önünde bulundurun:

  • Blazor, .NET ile ön yüz web uygulamaları oluşturmak için önerilir. .NET kullanarak hem ön uç hem de arka uç oluşturmanızı sağlar, zamandan ve maliyetlerden tasarruf etmenizi sağlar ve özellikle kurumsal uygulamalar için iyidir.
  • JavaScript web uygulamaları, mevcut JavaScript becerilerinizden yararlanmak istiyorsanız veya yerleşik JavaScript kitaplıkları veya çerçeveleriyle bütünleştirmeniz gerekiyorsa mantıklı olmaya devam eder.
  • Web Forms, MVC veya Razor Sayfaları gibi eski çerçeveleri kullanan mevcut uygulamalar desteklenmeye devam eder ve geliştirilmeye ve korunmaya devam edebilir.
Bugün WinUI ile kimler uygulama oluşturuyor?

Bugün, Adobe ve Apple gibi birçok müşteri WinUI kullanarak uygulama geliştiriyor.

Microsoft ayrıca Windows 11 File Explorer ve Fotoğraflar uygulaması gibi birçok WinUI uygulaması da oluşturmıştır.

Bugün .NET MAUI uygulamaları kim oluşturuyor?

Microsoft dahil olmak üzere birçok müşteri .NET MAUI ile platformlar arası uygulamalar oluşturuyor. Örneğin, Microsoft Azure mobil uygulaması .NET MAUI kullanılarak oluşturulur.

.NET müşteri vitrini hakkında daha fazla bilgi edinin.

Bugün WPF uygulamaları kim oluşturuyor?

Microsoft Visual Studio kullanıcı arabiriminin çoğu WPF ile oluşturulur. Visual Studio IDE, karmaşık, yüksek performanslı bir WPF uygulamasının önemli bir örneğidir.

Bugün Blazor uygulamalarını kimler oluşturuyor?

GE Digital'in FlightPulse havayolu sistemi, pilotların gördüğü her şeyin arka uç yapılandırması için Blazor kullanır ve güvenlik ve verimliliği artırmak için sensör verilerini ve analizlerini doğrudan pilotlara getirir.

.NET sitesinde daha fazla Blazor müşteri hikayeleri bakın.

Paketleme, dağıtım ve güncelleştirmeler

Paketlenmiş, paketlenmemiş ve dış konumla paketlenmiş uygulamalar arasındaki fark nedir?

Paketlenmiş, paketlenmemiş ve dış konum uygulamalarıyla paketlenmiş tanımları için bkz. Dağıtıma genel bakış. Bu konu başlığında her seçeneğin avantajları ve dezavantajları da açıklanmaktadır.

WinUI uygulamam son kullanıcılar için otomatik olarak güncelleştirilecek mi?

WinUI uygulaması Mağaza, .appinstaller dosyası veya mevcut bir MSI veya setup.exe paketi aracılığıyla teslim edilebilir. Mağaza ve AppInstaller, otomatik güncelleştirmeleri etkinleştirmiş olan son kullanıcılar için otomatik güncelleştirmeleri destekler, ancak MSI/setup.exe uygulamalarının kendi güncelleştirme mekanizmalarını sağlaması gerekir.

MSBuild kullanmadan Windows App SDK kullanabilir miyim?

Genel olarak hayır. WinUI ve Windows App SDK MSBuild gerektirir; bu nedenle Visual Studio onlarla geliştirmenin önkoşullarından biridir. WinUI'yi diğer araç zincirleriyle kullanmayan Windows App SDK uygulamalar oluşturmak teknik olarak mümkün olsa da, bu desteklenmez.

Performans ve iyileştirme

Windows uygulamamı son kullanıcılara harika hissettirmek için ne yapabilirim?

Bkz. Windows uygulama geliştirme - En iyi yöntemler ve Windows app performansa ve temel bilgilere genel bakış.

Compatibility

Kullanıcılarımın WinUI uygulamamı kullanmak için Windows'ı güncelleştirmeleri gerekecek mi?

Windows 10, sürüm 1809 veya üzeri olan kullanıcılar, işletim sistemini güncelleştirmeden WinUI uygulamalarını yükleyebilir.

WinUI uygulamamla Arm64'i hedefleyebilir miyim?

Evet.

Kullanımdan kaldırma işlemleri ve geçiş süreçleri

UWP için UWP / WinUI kullanım dışı mı?

Hayır. UWP ve UWP için WinUI hala desteklenmektedir ve hata, güvenilirlik ve güvenlik düzeltmeleri almaya devam etmektedir. Ancak, yeni özelliklerin ve özelliklerin çoğu WinUI'ye eklenir.

.NET 9 için UWP desteği mevcuttur. Bu seçenek, en son .NET sürümünü kullanan UWP uygulamaları için bir modernleştirme yolu sağlar.

.NET 9 UWP desteğinin hedefleri şunlardır:

  1. WinUI'ye geçmek isteyen geliştiriciler için daha iyi bir geçiş yolu sağlayın.
  2. Geliştiricilerin en son .NET ve C# özelliklerinden yararlanabilmesi için yerel .NET bağımlılıklarını kaldırın.

Daha fazla bilgi için blog gönderisine bakın: .NET 9 ve Yerel AOT için önizleme UWP desteğiyle UWP uygulamanızı değiştirme.

UWP için Bir UWP / WinUI uygulamasını WinUI'ye ne zaman geçirmeliyim?

UWP geliştiricileri, UWP'den ve özellik kümesinden memnunsa geçiş konusunda baskı hissetmemelidir; çoğu uygulama için doğru seçim UWP'de kalmak olabilir.

En son Windows platformundan ve .NET yatırımlarından yararlanmak isteyen uygulamalar Windows App SDK geçmeyi düşünmelidir. Bkz. UWP'den Windows App SDK'ye Geçiş Yap.

UWP ve UWP için WinUI uygulamasını ne zaman WinUI'ye geçirmemem gerekir?

Xbox, Surface Hub veya HoloLens için oluşturuyorsanız UWP'yi kullanmaya devam edin.

WPF kullanım dışı mı bırakıldı?

Hayır. WPF desteklenir, önerilir ve özellik güncelleştirmelerini almaya devam eder. GitHub üzerindeki WPF yol haritasına bakın.

WinForms kullanım dışı mı?

Hayır. WinForms desteklenir ve özellik güncelleştirmelerini almaya devam eder. GitHub üzerindeki Windows Forms Yol Haritası'na bakın.

Windows Runtime (WinRT) kullanım dışı mı?

Hayır. WinRT , birden çok dilde birlikte çalışma olanağı sağlayan bir uygulama ikili arabirimidir (ABI). WinRT, COM'un evrimidir ve Windows App SDK işlevlerinin çoğunu WinRT API'leri aracılığıyla sağlar.

Sürüm notları

Windows App SDK sürüm notlarını nerede bulabilirim?

En son sürüm notlarına Yenilikler sayfasından ulaşabilirsiniz.