MVVMCROSS ir jaudīgs starpplatformu MVVM ietvars, kas uzlabo Xamarin vietējos projektus, ļaujot dalīties ar prezentācijas slāņiem un UI loģiku dažādās platformās. Šeit ir daži izplatīti MVVMCROSS lietošanas gadījumi Xamarin vietējos projektos:
1. starpplatformas kods atkārtota izmantošana **
MVVMCROSS ļauj izstrādātājiem maksimizēt kodu atkārtotu izmantošanu, ievietojot ViewModels un biznesa loģiku portatīvajā klases bibliotēkā (PCL). Uz šo PCL var atsaukties uz vairākiem platformas specifiskiem projektiem, piemēram, Xamarin.android un Xamarin.ios, nodrošinot, ka galvenā loģika paliek konsekventa, kamēr lietotāja saskarni var pielāgot katrai platformai [1] [2].2. MVVM modeļa ieviešana **
MVVMCROSS atvieglo modeļa-View-ViewModel (MVVM) modeļa ieviešanu, kas ir izdevīgs, lai saglabātu skaidru bažu nodalīšanu starp lietotāja saskarni un biznesa loģiku. Šis modelis palīdz radīt brīvi savienotas lietojumprogrammas, padarot tās vieglāk pārbaudāmus un uzturēt [3] [5].3. Datu saistīšana un navigācija **
MVVMCROSS nodrošina stabilas datu saistīšanas iespējas, ļaujot skatiem nemanāmi saistīties ar skatuModels. Šī funkcija atbalsta dažādus iesiešanas režīmus un pārveidotājus, uzlabojot lietojumprogrammas lietotāja saskarnes elastību. Turklāt MVVMCROSS ietver navigācijas sistēmu, kas vienkāršo pārvietošanos starp dažādiem skatiem lietotnē [2] [5].4. Atkarības injekcija un spraudņi **
MVVMCROSS piedāvā atkarības injekcijas (DI) konteineru, kas ļauj izstrādātājiem reģistrēt un atrisināt platformas specifiskus pakalpojumus no PCL. Šī funkcija ir būtiska, lai integrētu platformai specifisko funkciju, bez dublēšanas koda. Turklāt MVVMCROSS atbalsta plašu spraudņu klāstu kopīgām funkcijām, piemēram, datu bāzes operācijām, tīkla savienojamību un daudz ko citu, kurus var viegli integrēt projektos, izmantojot NuGet paketes [1] [3].5. platformai raksturīga lietotāja saskarne **
Kamēr Xamarin.Forms ierobežo UI pielāgošanu dažādās platformās, MVVMCROSS ar Xamarin Native ļauj izstrādātājiem izveidot platformas specifiskas UIS. Tas ir īpaši noderīgi, ja lietojumprogrammai ir nepieciešams vietējs izskats un sajūta katrā platformā. MVVMCROSS nodrošina, ka, neraugoties uz dažādām UI ieviešanām, pamatā esošā biznesa loģika joprojām ir dalīta un konsekventa [1] [4].6. vienības pārbaude un attīstības efektivitāte **
Sadalot biznesa loģiku PCL, MVVMCROSS atvieglo vienības testu rakstīšanu lietojumprogrammas galvenajai loģikai. Šī atdalīšana arī paātrina attīstību, jo izmaiņām biznesa loģikā nav vajadzīgas modifikācijas platformai raksturīgajam lietotāja saskarnes kodam [5].Rezumējot, MVVMCROSS ir daudzpusīgs rīks Xamarin vietējiem projektiem, piedāvājot strukturētu pieeju dažādu platformu izstrādei, vienlaikus saglabājot elastību katrai platformai pielāgot UI. Tās funkcijas, piemēram, MVVM modeļa atbalsts, datu saistīšana, atkarības iesmidzināšana un plaša spraudņu ekosistēma, padara to par ideālu izvēli sarežģītām, starpplatformu lietojumprogrammām.
Atsauces:[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-mvmcross
[3] https://dev.to/christian1006/creating-cross-platform-xamarin-applications-using-the-mvvmcross-framework-2920
[4] https://canbilgin.wordpress.com/tag/mvvmcross/
[5] https://www.mvvmcross.com/documentation/getting-started/getting-started
[6] https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-xamarin-forms-version
[7] https://stackoverflow.com/questions/32220007/what-does-mvvmcross-do-that-xamarin-doesnt- alread
[8] https://stackoverflow.com/questions/38450264/xamarin-forms-vs-xamarin-mvvmcross