Kui võrrelda MVVMCROSSi kasutamist Xamarin.Forms ja Xamarin Natilisega, ilmnevad mitmed peamised erinevused, peamiselt kasutajaliidese paindlikkuse, koodide jagamise ja arendusmeetodi osas.
UI paindlikkus ja kontroll
- Xamarin.Forms: see raamistik pakub jagatud kasutajaliidese kihti platvormide vahel, mis lihtsustab arengut, võimaldades teil UI -koodi üks kord kirjutada ja juurutada see mitmele platvormile. See jagatud kasutajaliides võib siiski piirata kohandamist platvormipõhiste funktsioonidega, nõudes kohandatud renderdajate jaoks keerukamate kasutajaliidese elementide jaoks [7] [9]. MVVMCROSS -i saab kasutada koos Xamarin.Forms äriloogika ja navigeerimise haldamiseks, kuid kasutajaliides püsib platvormide vahel standardiseeritud [1] [10].
- Xamariini looduslik: kui kasutate Xamariini looduslikku MVVMCrossiga, on teil iga platvormi jaoks täielik kontroll UI üle. See võimaldab platvormipõhiseid kasutajaliidese rakendusi, maksimeerides iga platvormi looduslikku välimust ja tunnet. Kuigi see lähenemisviis nõuab iOS -i ja Androidi eraldi kasutajaliidese kihtide väljatöötamiseks rohkem pingutusi, pakub see suuremat paindlikkust ja kohandamist [7] [9].
Koodide jagamine ja taaskasutamine
- Xamarin.forms: Xamarin.Forms abil saate jagada mitte ainult äriloogikat (MVVMCrossi kaudu), vaid ka UI -koodi platvormidel. See lihtsustab arengut ja vähendab koodide hulka, mida peate hooldama. Kuid kasutajaliides piirdub tavalise elementide kogumiga, mis töötavad kõigil platvormidel [4] [10].
- Xamarin Native: MVVMCROSS -iga loodusliku Xamariini seadistuses saate jagada äriloogikat (ViewModels) platvormidel, kuid peate UI iga platvormi jaoks eraldi rakendama. See lähenemisviis võimaldab MVVMCROSSi kasutamisel esitluskihis ja kasutajaliidese loogikat rohkem korduda, kuid nõuab siiski platvormipõhist kasutajaliidese arendamist [9].
Arengu lähenemisviis
- Xamarin.Forms: arendajad eelistavad arendajad Xamarin.Forms ja MVVMCrossiga, ilma ulatusliku mobiilse kogemuseta, kuna see lihtsustab platvormideülest kasutajaliidese arengut. Raamistik tegeleb suure osa aluseks olevast keerukusest, võimaldades arendajatel keskenduda ühisele loogikale ja kasutajaliidesele [4] [10].
-Xamariini looduslik: Natiivse Xamariini arengu MVVMCrossiga eelistavad tavaliselt arendajad, kes soovivad UI üle peeneteralist kontrolli ja tunnevad platvormipõhist arengut. See lähenemisviis nõuab rohkem teadmisi iOS -i ja Androidi arendamisel, kuid pakub suuremat paindlikkust kasutajaliidese kujundamisel ja rakendamisel [7] [9].
Navigeerimine ja köitmine
- Xamarin.formid koos mvvmcrossiga: navigeerimine Xamarin.Vormid MVVMCROSS -iga hallatakse ViewModeli tasemel, võimaldades muret puhta eraldamise. MVVMCROSS pakub täiustatud sidumisvõimalusi, näiteks tagasiväärtusi, ehkki sellel puuduvad mõned funktsioonid, näiteks standardses Xamarin.Forms -i seondumises leiduv lähteomadus [2] [10].
- MVVMCROSS -iga NATRIVE KOHTA: Natiivse Xamariini projektides käitleb MVVMCross navigeerimist ja vaate/vaatemodelli sidumist, võimaldades platvormidel järjepidevat MVVM -i arhitektuuri. See seadistus võimaldab arendajatel kasutada platvormipõhiseid navigeerimisharjumusi, säilitades samal ajal jagatud äriloogika kihi [3] [9].
Kokkuvõtlikult võib öelda, et kuigi mõlemad lähenemisviisid saavad MVVMcrossi MVVM-i arhitektuuri jaoks kasutada, pakub Xamarin.Forms jagatud kasutajaliidese kihti, millel on vähem kontroll platvormipõhiste kasutajaliidese funktsioonide üle, samas kui Xamarini natiiv pakub täielikku kontrolli kasutajaliidese kohandamisel, kuid nõuab rohkem arendustööd eraldi kasutajaliidese rakenduste jaoks.
Tsitaadid:[1] https://www.mvvmcross.com/documentation/platform/xamarin.forms/xamarin-forms
[2] https://www.xamarinhelp.com/use-xamarin-forms-mvvm-framework/
[3] https://canbilgin.wordpress.com/tag/mvvmcross/
]
]
[6] https://canbilgin.wordpress.com/2017/03/26/xamarin-forms-application-with-mvvvmcross/
]
]
]
[10] https://visualstudiomagazine.com/articles/2018/05/08/build-a-xamarin.forms-application.aspx