Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kā mvvmcross uzlabo kodu atkārtoti izmantot starpplatformu lietotnēs


Kā mvvmcross uzlabo kodu atkārtoti izmantot starpplatformu lietotnēs


MVVMCROSS ievērojami uzlabo koda atkārtotu izmantošanu starpplatformu lietotnēs, izmantojot modeļa-View-ViewModel (MVVM) arhitektūras modeli. Lūk, kā tas to sasniedz:

1. Bažu atdalīšana: MVVMCROSS veicina skaidru bažu nodalīšanu, sadalot pieteikumu divās galvenajās daļās: kodols un lietotāja saskarne. Galvenais projekts, kas parasti ir portatīvā klases bibliotēka (PCL) vai .NET standarta bibliotēka, satur visus ViewModels, modeļus un biznesa loģiku. Tas ļauj maksimāli atkārtoti izmantot kodu dažādās platformās, jo biznesa loģika tiek atsaistīta no platformas specifiskā koda [1] [2] [7].

2. ViewModels galvenajā projektā: ievietojot ViewModels galvenajā projektā, MVVMCROSS ļauj izstrādātājiem dalīties ar šiem komponentiem vairākās platformās. Tas nozīmē, ka loģiku lietotāja mijiedarbības, datu manipulācijas un navigācijas apstrādei var atkārtoti izmantot bez modifikācijas dažādās platformās, piemēram, iOS, Android un Windows [1] [3] [9].

3. Datu saistīšana: MVVMCROSS atbalsta datu iesiešanu, kas automātiski atjaunina lietotāja saskarni, kad skataModel notiek izmaiņas. Šī funkcija ir būtiska, lai saglabātu konsekvenci dažādās platformās, un samazina nepieciešamību pēc manuāliem lietotāja saskarnes atjauninājumiem, turpmāk uzlabojot koda atkārtotu izmantošanu [4] [5].

4. Atkarības iesmidzināšana un spraudņi: MVVMCROSS ietver spraudņa arhitektūras un atkarības injekcijas (DI) iespējas. Šīs funkcijas ļauj izstrādātājiem ieviest platformas specifiskas funkcijas tādā veidā, ka tiem var viegli piekļūt un atkārtoti izmantot no galvenā projekta. Tas nozīmē, ka, lai gan lietotāja saskarnes slānim jābūt specifiskam platformai, daudzas pamatā esošās funkcijas joprojām var dalīties [3] [9].

5. Navigācija un skati Prezidenti: MVVMCROSS nodrošina jaudīgu skatuModeli-pirmo navigācijas sistēmu, kas ļauj orķestrēt navigāciju no galvenā projekta. Tas nozīmē, ka lietotāju mijiedarbības plūsmu un ekrāna pārejas var pārvaldīt centrāli, samazinot vajadzību pēc platformas specifiska navigācijas koda [7].

6. Efektīva projekta struktūra: MVVMCROSS mudina uz strukturētu pieeju projekta organizācijai, skaidri nodalot platformas-agnostisko kodu galvenajā un platformā specifiskajā kodā UI projektos. Šī struktūra atvieglo dažādu platformu lietojumprogrammu uzturēšanu un paplašināšanu [2] [9].

Kopumā MVVMCROSS uzlabo kodu atkārtotu izmantošanu, centralizējot biznesa loģiku, izmantojot datu iesiešanu un nodrošinot rīkus platformai specifisko funkciju pārvaldībai vienotā veidā. Šī pieeja ievērojami samazina dublētā koda daudzumu un paātrina starpplatformu lietotņu izstrādi.

Atsauces:
[1] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvm-apps-with-xamarin-and-mvmcross
[2] https://www.toptal.com/xamarin/cross-platform-apps-with-xamarin
[3] https://www.suneco.nl/blogs/boost-your-xamarin-native-projects-with-mvvmcross/
[4] https://tiefenauer.github.io/blog/mobile-app-development-with-xamarin-and-mvvmcross-part-1-troduction/
[5] https://www.mvvmcross.com/documentation/fundamentals/data
[6] https://diglib.tugraz.at/download.php?id=576a78335451d&location=browse
[7] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[8] https://www.reddit.com/r/swift/comments/yrqlhu/is_crossplatform_the_future_of_mobile_development/
[9] https://leaware.com/creating-cross-platform-xamarin-applications-using-the-mvvmcross-framework/
[10] https://stackoverflow.com/questions/22409697/maximizing-ui-code-reuse-with-xamarin-mvmcross