MVVMCROSS on tehokas alustojen välinen MVVM-kehys, joka parantaa Xamarinin alkuperäisprojekteja mahdollistamalla esityskerrosten ja käyttöliittymän logiikan jakamisen eri alustoilla. Tässä on joitain yleisiä käyttötapauksia MVVMCROSS: lle Xamarinin alkuperäisissä projekteissa:
1. Alasuuntainen koodin uudelleenkäyttö **
MVVMCROSS antaa kehittäjille maksimoida koodin uudelleenkäytön asettamalla näkymämallit ja liiketoimintalogiikan kannettavaan luokkakirjastoon (PCL). Tähän PCL: ään voidaan viitata useisiin alustakohtaisiin projekteihin, kuten xamarin.android ja xamarin.ios, varmistamalla, että ydinlogiikka pysyy johdonmukaisena, kun taas käyttöliittymä voidaan räätälöidä jokaiselle alustalle [1] [2].2. MVVM -kuvion toteutus **
MVVMCROSS helpottaa malli-näkymä-viwModel (MVVM) -kuvion toteutusta, josta on hyötyä käyttöliittymän ja liiketoimintalogiikan välisten huolenaiheiden ylläpitämisessä. Tämä malli auttaa luomaan löysästi kytkettyjä sovelluksia, mikä helpottaa niiden testaamista ja ylläpitämistä [3] [5].3. Tietojen sitominen ja navigointi **
MVVMCross tarjoaa vankat tietojen sitomisominaisuudet, jolloin näkymät sitoutuvat näkymämodeleihin saumattomasti. Tämä ominaisuus tukee erilaisia sitoutumismuotoja ja muuntimia, mikä parantaa sovelluksen käyttöliittymän joustavuutta. Lisäksi MVVMCross sisältää navigointijärjestelmän, joka yksinkertaistaa liikkumista sovelluksen eri näkymien välillä [2] [5].4. Riippuvuusinjektio ja laajennukset **
MVVMCROSS tarjoaa riippuvuusinjektion (DI) -säiliön, jonka avulla kehittäjät voivat rekisteröidä ja ratkaista alustakohtaisia palveluita PCL: stä. Tämä ominaisuus on ratkaisevan tärkeä alustakohtaisten toimintojen integroimiseksi koodalla. Lisäksi MVVMCross tukee laajaa valikoimaa laajennuksia yleisiin toimintoihin, kuten tietokantatoimintoihin, verkkoyhteyteen ja muihin, jotka voidaan helposti integroida projekteihin NUGET -pakettien kautta [1] [3].5. Platform-erityinen käyttöliittymän mukauttaminen **
Vaikka Xamarin.Forms rajoittaa käyttöliittymän räätälöintiä alustojen välillä, MVVMCross Xamarinin alkuperäiskansojen kanssa antaa kehittäjille mahdollisuuden luoda alustakohtaisia käyttöliittymiä. Tämä on erityisen hyödyllistä, kun sovellus vaatii alkuperäisen ilmeen jokaiselle alustalle. MVVMCross varmistaa, että erilaisista käyttöliittymän toteutuksista huolimatta taustalla oleva liiketoimintalogiikka on edelleen yhteinen ja johdonmukainen [1] [4].6. Yksikkötestaus ja kehitystehokkuus **
Erottamalla liiketoimintalogiikka PCL: ksi, MVVMCross helpottaa yksikkötestien kirjoittamista sovelluksen ydinlogiikkaan. Tämä erotus nopeuttaa myös kehitystä, koska liiketoimintalogiikan muutokset eivät vaadi muutoksia alustakohtaiseen käyttöliittymäkoodiin [5].Yhteenvetona voidaan todeta, että MVVMCROSS on monipuolinen työkalu Xamarinin natiiviprojekteille, jotka tarjoavat jäsennellyn lähestymistavan alustojen väliseen kehitykseen säilyttäen samalla joustavuuden mukauttamaan käyttöliittymää jokaiselle alustalle. Sen ominaisuudet, kuten MVVM-kuviotuki, datan sitoutuminen, riippuvuusinjektio ja laaja pluginin ekosysteemi tekevät siitä ihanteellisen valinnan monimutkaisissa, alustojen välissä sovelluksissa.
Viittaukset:[1] https://www.suneco.nl/blogs/boost-your-xamarin-native-projects-with-mvvmcross/
[2] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvm-apps-with-xamarin-and-mvvmcross
.
[4] https://canbilgin.wordpress.com/tag/mvvmcross/
.
[6] https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-xamarin-forms-version
.
[8] https://stackoverflow.com/questions/38450264/xamarin-forms-vs-xamarin-mvvmcross