Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Vai MVVMCROSS var integrēt citos ietvaros vai bibliotēkās


Vai MVVMCROSS var integrēt citos ietvaros vai bibliotēkās


MVVMCROSS ir daudzpusīgs un paplašināms MVVM ietvars, kas paredzēts dažādu platformu izstrādei, īpaši .NET ekosistēmā. Tas atbalsta plašu platformu klāstu, ieskaitot Xamarin.ios, Xamarin.android, Xamarin.Forms, Universal Windows platformu (UWP) un Windows prezentācijas ietvaru (WPF) [1] [2] [4]. Viena no galvenajām MVVMCROSS iezīmēm ir tā spēja integrēties ar citiem ietvariem un bibliotēkām, uzlabojot tā lietderību sarežģītā lietojumprogrammu izstrādē.

integrācija ar citiem ietvariem

1. CSLA.NET integrācija: MVVMCROSS var izmantot līdztekus csla.net, biznesa objektu ietvaram. Kamēr CSLA.NET koncentrējas uz biznesa loģiku un datu modelēšanu, MVVMCROSS apstrādā lietotāja saskarni un lietojumprogrammu līmeņa loģiku. Izstrādātāji var izmantot CSLA.NET biznesa objektu sistēmu, mantojot no CSLA “ViewModelBase” un ieviešot MVVMCROSS prasības. Šī integrācija ļauj kodu koplietot dažādās platformās, vienlaikus saglabājot skaidru bažu nodalīšanu [5].

2. Reactiveui integrācija: Lai arī MVVMCross un Reactiveui ir gan MVVM ietvari, tie kalpo dažādiem mērķiem. MVVMCROSS ir vairāk koncentrējusies uz vietējām mobilajām lietojumprogrammām un kodu koplietošanu, savukārt Reactiveui uzsver reaktīvo programmēšanu, izmantojot reaktīvos paplašinājumus (RX). Lai arī tie var pastāvēt līdzāspastāvēt, tos parasti izmanto dažādiem lietojumprogrammu izstrādes aspektiem. MVVMCROSS nodrošina visaptverošu funkciju kopumu UI izstrādei, turpretī Reactiveui ir ideāli piemērots lietojumprogrammām, kurām nepieciešama progresējoša asinhrona operācija [7].

3. Xamarin.Forms un citi UI ietvari: MVVMCROSS atbalsta integrāciju ar Xamarin.Forms, ļaujot izstrādātājiem izveidot starpplatformu lietojumprogrammas ar kopīgu biznesa loģiku. Tas labi darbojas arī ar citiem UI ietvariem, piemēram, Maui un WPF, nodrošinot elastību, izvēloties lietotāja saskarni [3] [7].

4. Spraudņa ietvars: MVVMCROSS ietver spraudņa sistēmu, kas ļauj izstrādātājiem paplašināt tā funkcionalitāti, pievienojot trešo personu spraudņus tādām funkcijām kā GPS atrašanās vieta, lokalizācija un saistošie paplašinājumi. Šī paplašināmība ļauj izstrādātājiem pielāgot ietvaru atbilstoši viņu projekta vajadzībām [1] [2].

Galvenās funkcijas, kas atvieglo integrāciju

- Kontroles (SOK) un atkarības injekcijas inversija: MVVMCROSS nodrošina SOK konteineru, kas atvieglo atkarības injekciju, padarot vieglāku integrāciju ar citiem ietvariem, pārvaldot atkarības un pakalpojumus visā lietojumprogrammā [1] [4].

- Pielāgojams iesiešanas dzinējs: ietvars ļauj izstrādātājiem izveidot pielāgotus iesiešanas skatus, kas var būt noderīgi, integrējoties ar citiem lietotāja saskarnes komponentiem vai ietvariem, kuriem nepieciešami specifiski datu saistīšanas mehānismi [1] [2].

- ViewModel to ViewModel navigācija: Šī funkcija palīdz pārvaldīt navigācijas loģiku, kuru var integrēt ar citu ietvaru navigācijas modeļiem, lai nodrošinātu pastāvīgu lietotāja pieredzi dažādās platformās [1] [2].

Rezumējot, MVVMCROSS ir izstrādāts tā, lai būtu ļoti integrējams citos ietvaros un bibliotēkās, ļaujot izstrādātājiem izmantot savas stiprās puses MVVM arhitektūrā, vienlaikus iekļaujot papildu funkcijas no citiem rīkiem. Tā paplašināmība un atbalsts dažādām platformām padara to par daudzpusīgu izvēli starpplatformu lietojumprogrammu izstrādei.

Atsauces:
[1] https://github.com/mvvmcross/mvvmcross
[2] https://dotnet.libhunt.com/mvvmcross-alternatives
[3] https://visualstudiomagazine.com/articles/2018/05/08/build-a-xamarin.forms-application.aspx
[4] https://www.mvvmcross.com/documentation/getting-started/getting-started
[5] https://stackoverflow.com/questions/17373587/how-well-would-mvvmcross-and-csla-net-work-together-in-a-multi-platform-strategy
[6] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[7] https://www.reactiveui.net/vs/mvvmcross
[8] https://www.mvvmcross.com
[9] https://github.com/rogerwcpt/xamarin-mvvvm-frameworks