Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mvvmcross


Mvvmcross


MVVMCross, .NET ekosistemindeki platformlar arası uygulama geliştirme için tasarlanmış güçlü, düşünceli bir MVVM (Model-View-ViewModel) çerçevesidir. Xamarin.ios, Xamarin.android, Xamarin.Forms, Universal Windows Platformu (UWP), Windows Sunum Vakfı (WPF) ve daha fazlası [1] [3] [4] dahil olmak üzere çeşitli platformları destekler. İşte temel özelliklerine ve nasıl çalıştığına genel bir bakış:

mvvmcross'un temel özellikleri

- MVVM Mimarlık Deseni: MVVMCross, uygulama mantığını birbirine bağlı üç bileşene ayıran MVVM modelini uygular: Model, View ve ViewModel [3].
-Navigasyon Sistemi: ViewModel-Viewmodel geçişlerinin kolay yönetilmesine izin veren sağlam bir gezinme sistemi sağlar [2] [4].
- Veri bağlama: MVVMCross, geliştiricilerin görüşleri için özel bağlamalar oluşturmalarını sağlayan özelleştirilebilir bir bağlanma motoru içerir [4].
- Kontrolün (IOC) ve bağımlılık enjeksiyonunun tersine çevrilmesi: Çerçeve, gevşek bağlantıyı ve test edilebilirliği kolaylaştırarak bağımlılık enjeksiyonu yoluyla IOC'yi destekler [3] [4].
-Platforma özgü destek: platforma özgü özellikler ve işlevler için kapsamlı destek sunar [3].
- Eklentiler ve uzantılar: MVVMCross, geliştiricilerin GPS, lokalizasyon ve daha fazlası gibi ek işlevleri kolayca entegre etmelerini sağlayan bir eklenti çerçevesi içerir [4].

mvvmcross nasıl çalışır

Core ve UI projeleri

MVVMCross uygulamaları tipik olarak iki ana parçadan oluşur:

- Temel Proje: Bu, iş mantığını, görünümlüleri, hizmetleri ve modelleri içerir. Genellikle platformlar arası uyumluluğu sağlamak için bir .NET standart kütüphanesi olarak uygulanır [2].
- UI Projeleri: Her platformun (örneğin, iOS, Android), platforma özgü kod ve temel proje ile etkileşime giren görünümleri içeren kendi UI projesi vardır [2].

Anahtar Nesneler ve Başlatma

- Uygulama Sınıfı: Çekirdek projede bulunan bu sınıf, IOC kapsayıcısına özel nesneleri kaydetmekten ve uygulama mantığını başlatmaktan sorumludur [2].
- Appstart Nesnesi: İsteğe bağlı, bu nesne uygulama başlatma sırasında ilk önce hangi ViewModel'in sunulacağını belirler [2].
- Kurulum sınıfı: Her platform projesinde bulunan bu sınıf MVVMCross'u başlatır ve platforma özgü hizmetleri kaydeder [2].

Başlatma Süreci

1. Platform Başlangıç: Yerel platformun başlangıç ​​işlemi başlar.
2. MVVMCross Kurulumu: `setup 'sınıfı çerçeveyi iki adımda başlatır:` `initializeprimary' '(ana iş parçacığı) ve` `` `` `` arka plan iş parçacığı)' [2].
3. Uygulama başlatma: `` uygulama 'sınıfı başlatılır ve ilk gezinme adımını yönetmek için bir `` appstart' 'nesnesi sağlar [2].

mvvmcross ile başlamak

Yeni bir MVVMCross projesi başlatmak için geliştiriciler MVXScaffolding gibi şablonları kullanabilir. Çerçeve, hem çekirdek hem de platforma özgü projelere yüklenmesi gereken NuGet paketleri aracılığıyla mevcuttur [3] [4]. Ayrıntılı kılavuzlar ve belgeler için resmi MVVMCross web sitesi ve GitHub deposu mükemmel kaynaklardır [1] [4].

Alıntılar:
[1] https://www.mvvmcross.com
[2] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[3] https://www.mvvmcross.com/documentation/getting-started/getting-started
[4] https://github.com/mvvmcross/mvvmcross
[5] https://www.mvvmcross.com/blog/
[6] https://github.com/mvvmcross
[7] https://x.com/mvvmcross?lang=en
[8] https://www.nuget.org/profiles/mvvmcross