Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Aké sú hlavné nevýhody používania aplikácií MVVMCross pre aplikácie Android a iOS


Aké sú hlavné nevýhody používania aplikácií MVVMCross pre aplikácie Android a iOS


MVVMCROSS je populárny rámec pre mobilný vývoj medzi platformami pomocou xamarin, ktorý vývojárom umožňuje využívať vzor MVVM naprieč systémom Android, iOS a ďalších platforiem. Napriek svojim výhodám je však potrebné zvážiť niekoľko nevýhod, ktoré pri používaní aplikácií MVVMCross pre aplikácie Android a iOS:

1. Krivka zložitosti a učenia: MVVMCross je veľký rámec, ktorý si vyžaduje čas na úplné pochopenie. Noví vývojári môžu považovať za náročné porozumieť svojim základom, napríklad spôsob, akým sa prenáša dátový kontext medzi komponentmi [1]. Táto zložitosť môže viesť k strmejšej krivke učenia v porovnaní s jednoduchšími rámcami.

2. Problémy s výkonom: Niektorí používatelia uviedli problémy s výkonom, ako napríklad časy pomalého spustenia a oneskorenia v väzbách ListView. Tieto problémy možno pripísať MVVMCross, Xamarin alebo samotnej platforme Android, čo sťažuje určenie presnej príčiny bez profilu výkonu [1].

3. Chybové správy a ladenie: Chybové správy rámca môžu byť informatívnejšie. Namiesto iba hlásenia chýb by mohli navrhnúť potenciálne riešenia, ktoré by pomohli pri rýchlejšom ladení a vývoji [1].

4. Opätovnosť a testovateľnosť: Zatiaľ čo MVVMCROSS je zamerané na zlepšenie testovateľnosti oddelením obchodnej logiky od pohľadu, v praxi sa môžu modely nafúknuť a ťažko testovať. Platí to najmä v prípade, že zvládajú viacnásobné povinnosti a udržiavajú vnútorný stav, čo sťažuje nezávisle testovanie metód [2]. Okrem toho sa modely pohľadu často stávajú nepravdepodobnými v rôznych regulátoroch pohľadu kvôli ich špecifickým implementáciám [2].

5. Výzvy špecifické pre platformu: na Android, fragmentácia a zásobník Java môžu predstavovať ďalšie výzvy. Napríklad použitie obrázkov Intel Android X86 v emulátoroch môže viesť k vtipom, ako je nadmerné protokolovanie alebo problémy siete [1]. V systéme iOS môže nedostatok vstavaných väzieb komplikovať implementáciu MVVM, čo vedie k nadmernému odchodu na radiče zobrazenia alebo zobrazenia modelov pre úlohy, ktoré by nemali zvládnuť [2].

6. Zastaraná dokumentácia a návody: Vyskytli sa obavy týkajúce sa zastaraných návodov a dokumentácie pre MVVMCross. To môže novým vývojárom sťažiť začať alebo držať krok so zmenami v rámci [5].

7. Dlhovekosť a podpora: Boli nastolené otázky týkajúce sa zrelosti a dlhovekosti rámca, najmä v kontexte rýchlo sa rozvíjajúcich mobilných technológií. To môže ovplyvniť rozhodnutia o tom, či použiť MVVMCross na komerčné projekty [5].

Celkovo, zatiaľ čo MVVMCross ponúka významné výhody vo vývoji viacerých platforiem, jej zložitosť, problémy s výkonom a výzvy špecifické pre platformu si pri rozhodovaní o tom, či ho použiť pre aplikácie pre Android a iOS, si vyžaduje dôkladné zváženie.

Citácie:
[1] https://blog.rthand.com/aweek-of-impressions-of-developing-for-android-using-xamarin-mvvvmcross/
[2] https://www.danielhall.io/the-problems-with-mvvm-on-ios
[3] https://www.mvvmcross.com/documentation/upgrading/upgrade-to-mvvvmcross-60
Https://learn.microsoft.com/en-us/archive/msdnmagazine/2014/august/windows-phone-build-mvvm-apps-with-xamarin-mith-xamarin-mith-mith-mith-xamarin-mith
[5] https://xamarin21.rssing.com/chan-23562832/article1771.html
[6] https://stackoverflow.com/questions/16301045/mvvmcross-v3-is-that-wrong-to-try-try-to-use-use-behaviours-and-storyboards-in-a-mu-mu-mu
[7] https://www.reddit.com/r/dotnet/comments/1cqqika/worth_converting_net_androidios_to_maui/
[8] https://mentormate.com/blog/6-reasons-mvvmcross-Speeds-xamarin-development-personalizácie-ux/
[9] https://stackoverflow.com/questions/26108486/should-i-usus-mvvvmcross-for-xamarin-forms-and-windows-store-aptore-app