Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu öğretici serisinde, WinUI 3 uygulamasında Model-View-ViewModel (MVVM) tasarım deseni ve MVVM Araç Seti ile veri bağlama, bağımlılık ekleme ve birim testi uygulama gösterilmektedir. WinUI uygulaması oluşturma öğreticisini temel alır ve MVVM Araç Seti'ni ve MVVM Araç Seti ile geleneksel MVVM yaklaşımları arasındaki farkları kullanmak için görünüm modellerinizi nasıl güncelleştirebilirsiniz?
Bu öğreticinin kodunu GitHub deposundan indirebilir veya görüntüleyebilirsiniz.
Bu eğitimde şunları öğreniyorsunuz:
- MVVM Araç Seti ile geleneksel MVVM yaklaşımları arasındaki farkları anlayın.
- İyileştirilmiş test edilebilirlik için ViewModel'leri ve hizmetleri tutmak için ayrı bir sınıf kitaplığı projesi oluşturun.
- MVVM Araç Seti'ni kullanarak WinUI uygulamanızda veri bağlamayı uygulayın.
- MVVM Toolkit'i kullanarak
AllNotesViewModelveNoteViewModelgörünüm modellerini ekleyin. - ViewModel'leri ve hizmetleri yönetmek için bağımlılık enjeksiyonunu entegre edin.
- ViewModel'lerinizi ve hizmetlerinizi test etmek için bir birim testi projesi oluşturun.
Önkoşullar
Bu kılavuzu tamamlamak için aşağıdaki önkoşullara ihtiyacınız vardır:
- Visual Studio 2022 (sürüm 17.14 veya üzeri) veya WinUI uygulama geliştirme iş yükü yüklü Visual Studio 2026.
- WinUI uygulaması oluşturma öğreticisindeki adımları izleyerek oluşturulan başlangıç projesi. Öğreticiyi zaten biliyorsanız, github deposundan başlamak için kodu buradan indirebilirsiniz.
MVVM Araç Seti nedir?
MVVM Araç Seti, .NET uygulamalarınızda MVVM tasarım desenini uygulamanıza yardımcı olan modern, basit ve hızlı bir kitaplıktır. .NET Community Toolkit'in bir parçasıdır ve MVVM tabanlı uygulamaların geliştirilmesini basitleştirmek için bir dizi araç ve yardımcı program sağlar. MVVM Araç Seti şunları içerir:
-
ObservableObject: Özellik değişikliklerini görünüme bildiren görünüm modelleri oluşturabilmeniz için
INotifyPropertyChangedarabirimini uygulayan bir temel sınıf. - RelayCommand: Kullanıcı arabirimi eylemlerini görünüm modelinizdeki yöntemlere bağlamanızı sağlayan bir komut uygulaması.
- Messenger: Sıkı bir bağlantı olmadan uygulamanızın farklı bölümleri arasında iletişim sağlayan bir mesajlaşma sistemi.
- Öznitelikler: Özellik değişikliği bildirimleri ve komut uygulamaları gibi ortak kod oluşturmak için kullanabileceğiniz öznitelik kümesi.
- Kaynak Oluşturucular: Sabit kod yapısını azaltan, performansı artıran derleme zamanı kod üretimi.
- Bağımlılık Ekleme Desteği: Görünüm modellerinin ve hizmetlerinin yaşam döngüsünü yönetmek için bağımlılık eklemeye yönelik yerleşik destek.
MVVM Araç Seti, kullanımı kolay olacak ve mevcut projelerinizle tümleştirilecek şekilde tasarlanmıştır. WinUI, WPF ve .NET MAUI gibi çeşitli .NET platformlarıyla uyumludur. MVVM Araç Seti'nin farklı senaryolarda nasıl kullanılabileceğini görmek için GitHub deposundaki bazı örnek uygulamalara veya Microsoft Store'daki örnek uygulamalara göz atabilirsiniz.
MVVM Araç Seti ile geleneksel MVVM yaklaşımları arasındaki karşılaştırma nedir?
MVVM Araç Seti, ortak ViewModel kodu miktarını azaltır ve geleneksel yaklaşımlara kıyasla MVVM tasarım desenini uygulamanın birçok yönünü basitleştirir. Bazı önemli farklar şunlardır:
| Özellik | Geleneksel MVVM yaklaşımı | MVVM Araç Seti yaklaşımı |
|---|---|---|
| Mülk Değişikliği Bildirimi | Bir temel sınıfta INotifyPropertyChanged’yi manuel olarak uygulayın ve her özellik için PropertyChanged olaylarını tetikleyin. |
ObservableObject sınıfından devralın ve SetProperty yöntemini kullanarak PropertyChanged olaylarını otomatik olarak tetikleyin. |
| Komut Uygulaması | Her komut için manuel olarak ICommand uygulayın. |
RelayCommand ile minimum şablon kullanarak kolayca komut oluşturun. |
| Messaging | Özel mesajlaşma sistemleri uygulayın veya üçüncü taraf kitaplıkları kullanın. | Bileşenler arasında ayrılmış iletişim için yerleşik Messenger sınıfını kullanın. |
| Şablon Kod | Özellik değişikliği bildirimleri ve komut uygulamaları için yinelenen kod yazın. | Tekrarlayan kod yapılarını azaltmak için öznitelikleri ve kaynak oluşturucuları kullanın. |
| Performance | Yansıma ve çalışma zamanı kod üretimi yüzünden performans üzerinde bir yük olabilir. | Kaynak oluşturucular derleme zamanı kod oluşturma olanağı sağlayarak performansı artırır. |
| Bağımlılık Enjeksiyonu Desteği | Görünüm modeli yaşam döngülerinin elle ayarlanmasını ve yönetilmesini gerektirir. | Görüntüleme modeli yaşam döngülerini yönetmek için bağımlılık enjeksiyonuna yönelik yerleşik destek. |
| Öğrenme Eğrisi | MVVM kavramları ve desenleri hakkında daha ayrıntılı bilgi gerekebilir. | Basitlik ve üretkenlik odaklı öğrenme ve kullanım kolaylığı. |
MVVM tasarım deseni hakkında daha fazla bilgi için bkz. Windows veri bağlama ve MVVM, Model-View-ViewModel (MVVM) ve INotifyPropertyChanged Arabirimi için başvuru belgeleri.
WinUI Notları uygulaması
Bu öğreticide oluşturduğunuz son uygulama, WinUI uygulaması oluşturma öğreticisindeki WinUI Notları uygulamasının yeniden düzenlenmiş bir sürümüdür. Uygulama, kullanıcıların birden çok not oluşturmasına, kaydetmesine ve yüklemesine olanak tanır. Özgün uygulamanın kullanıcı arabirimi aynı kalır, ancak güncelleştirilmiş mimari veri bağlama ve model yönetimi görüntüleme için MVVM Araç Seti'ni kullanır.
AllNotesPage
Not Sayfası
İpucu
Windows uygulamaları oluştururken genellikle API başvuru belgelerine ve kavramsal belgelere başvurursunuz. Bu öğreticide, metinde satır içi ve "Belgelerde daha fazla bilgi edinin:" etiketli gruplarda bağlantılar görürsünüz. Bu bağlantılar isteğe bağlıdır; öğreticisini tamamlamak için bunları izlemeniz gerekmez. Bunlar, kendi uygulamalarınızı oluşturmaya başladığınızda ihtiyacınız olan bilgileri nerede bulabileceğinizi not etmek istemeniz durumunda sağlanır.
Windows developer