MVVMCross nabízí několik klíčových výhod oproti jiným rámcům MVVM, zejména v souvislosti s vývojem napříč platformami s Xamarinem. Zde jsou některé z hlavních výhod:
1.. Podpora mezi platformami: MVVMCross je navržen tak, aby podporoval širokou škálu platforem, včetně Xamarin.IOS, Xamarin.Android, Xamarin.Mac, Platforma Universal Windows (UWP), Windows Presentation Foundation (WPF) a další. To umožňuje vývojářům sdílet značné množství kódu na různých platformách, zkrátit dobu vývoje a zvýšit účinnost [4] [9].
2. MVVM Architektura a vazba dat: MVVMCross implementuje vzor MVVM efektivně a poskytuje robustní schopnosti vázání dat. Tato funkce automatizuje spojení mezi uživatelským rozhraním a obchodní logikou, což zajišťuje, že změny v modelu se odrážejí v pohledu a naopak. Vazba dat snižuje potřebu kódu kotle a zvyšuje udržovatelnost aplikace [3] [7].
3. navigační systém: MVVMCross obsahuje výkonný navigační systém první viewModel. Tento systém, kombinovaný s ViewPresenters, umožňuje flexibilní a efektivní navigaci mezi různými částmi aplikace [1].
4. Injekce závislosti a inverze kontroly (IOC): MVVMCross poskytuje lehkou kontejner závislosti na závislém závislosti, která zjednodušuje řízení závislostí napříč aplikací. To umožňuje snadnou registraci a řešení služeb, usnadňování testování jednotek a volné spojení komponent [2] [9].
5. Architektura plug-in: Framework nabízí systém plug-in, který vývojářům umožňuje snadno integrovat funkce specifické pro platformu. Tento systém umožňuje vytváření vlastních pluginů pro zpracování úkolů, jako je přístup k fotoaparátu, služby umístění nebo databázové operace, které lze na každé platformě implementovat odlišně [2] [9].
6. Testovatelnost: MVVMCross oddělováním obchodní logiky do ViewModels usnadňuje psaní testů jednotek pro základní logiku aplikace. Toto oddělení od komponent UI zajišťuje, že logiku lze testovat nezávisle na pohledách specifických pro platformu [2] [7].
7. Nativní zkušenosti s uživatelským rozhraním: Na rozdíl od některých jiných rámců, jako je Xamarin.Forms, MVVMCross umožňuje vývojářům vytvářet nativní komponenty uživatelského rozhraní pro každou platformu. To má za následek více nativní vzhled a pocity, což zvyšuje uživatelský zážitek na různých platformách [9] [10].
8. Komunita a open source: Být open-source rámcem, MVVMCross těží z příspěvků komunity a je aktivně udržován. Tato otevřenost umožňuje vývojářům podle potřeby rozšířit nebo upravit rámec a poskytovat možnosti flexibility a přizpůsobení [5] [7].
Celkově nabízí MVVMCross robustní sadu funkcí, které usnadňují efektivní vývoj napříč platformami se silným zaměřením na architekturu MVVM, vazbu dat a injekci závislosti, což z něj činí oblíbenou volbu pro komplexní aplikace Xamarin.
Citace:[1] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[2] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvvm-apps-with-xamarin-and-mvvmcross
[3] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[4] https://www.mvvmcross.com/documentation/getting-started/getting-started
[5] https://tiefenauer.github.io/blog/mobile-app-development-with-xamarin-and-mvvmcross-part-1-introduction/
[6] https://livebook.manning.com/book/xamarin-in-action/b-using-mvvm-light-instead-of-mvvmcross/v-15/
[7] https://www.cms.lk/mvvmcross-accross-platform-platform-for-xamarin/
[8] https://mentormate.com/blog/6-parsons-mvvmcross-speeds-xamarin-developalizes-ux/
[9] https://dev.to/christian1006/creating-cross-platform-xamarin-Applications-using-the-mvvmcross-framework-2920
[10] https://leaware.com/creating-cross-platform-xamarin-applications-using-the-mvvmcross-framework/