Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kādas ir alternatīvas skata vadītāju izmantošanai MVVMCROSS


Kādas ir alternatīvas skata vadītāju izmantošanai MVVMCROSS


MVVMCROSS skatam, kā vadītājiem ir izšķiroša loma, pārvaldot ViewModels prezentāciju dažādās platformās. Tomēr, ja jūs meklējat alternatīvas vai veidus, kā pielāgot prezentācijas loģiku ārpus tā, ko piedāvā vadītāji, šeit ir dažas pieejas:

1. Pielāgojot skatu vadītājus **

Jūs varat paplašināt vai modificēt esošos skata vadītājus, tos apakšklasējot vai ieviešot interfeisu “IMVXViewPresenter`. Tas ļauj jums pielāgot prezentācijas loģiku īpašām vajadzībām, piemēram, dažādu ekrāna izmēru vai orientācijas apstrādi dažādās platformās [1] [3]. Piemēram, jūs varētu vēlēties atšķirīgi parādīt skatuModeli pa tālruni salīdzinājumā ar planšetdatoru.

2. Izmantojot prezentācijas padomus **

MVVMCROSS nodrošina mehānismu, ko sauc par prezentācijas mājieniem (`MVXpresentationHint`), kas ļauj pieprasīt izmaiņas lietotāja saskarnē, obligāti neuzrādot jaunu skatu modeli. Jūs varat izveidot pielāgotus padomus, lai signalizētu par konkrētām darbībām vadītājam, piemēram, skataModeļa aizvēršana vai navigācijas kaudzes modificēšana [1] [3]. Šī pieeja ir noderīga, lai apstrādātu sarežģītas lietotāja saskarnes mijiedarbības, uz kurām nav ietverta noklusējuma vadītāji.

3. Alternatīvie MVVM ietvari **

Ja jūs meklējat plašākas izmaiņas MVVM arhitektūrā, jūs varētu apsvērt alternatīvus ietvarus, kas piedāvā dažādas pieejas prezentācijai un navigācijai. Dažas populāras alternatīvas ir:
- Prizma: pazīstams ar savu spēcīgo atbalstu WPF, Xamarin formās un ANO platformās, Prism nodrošina visaptverošu sistēmu uzturējamu lietojumprogrammu veidošanai [4].
- Reactiveui: Šis ietvars koncentrējas uz funkcionālo reaktīvo programmēšanu, ļaujot izveidot abstraktāku un pārbaudītāku UI loģiku [4].
- Caliburn.micro: viegls ietvars, kas atbalsta MV* modeļus XAML platformās, uzsverot ātru attīstību, neupurējot koda kvalitāti [4].

4. Pielāgota navigācijas loģika **

Tā vietā, lai paļautos tikai uz skatītājiem, jūs varat ieviest pielāgotu navigācijas loģiku tieši savā lietojumprogrammā. Tas varētu ietvert platformas specifiskas navigācijas API izmantošanu vai pielāgota navigācijas pakalpojuma izveidi, kas integrējas ar MVVMCross skatuModel-to-viewmodel navigācijas funkcijām [6].

5. dialogi un lidojumi **

Scenārijiem, kad jums ir jāparāda saturs ārpus standarta navigācijas plūsmas, MVVMCROSS atbalsta, izmantojot dialogus un lidojumus. Tos var pielāgot, lai tas atbilstu īpašām prezentācijas vajadzībām, piedāvājot alternatīvu tradicionālajai lappusei balstītai navigācijai [9].

Rezumējot, lai gan skati no vadītājiem ir spēcīgs MVVMCROSS rīks, varat tos pielāgot vai paplašināt, izmantot prezentācijas padomus dinamiskām UI izmaiņām vai izpētīt alternatīvas MVVM ietvarus un pielāgotas navigācijas pieejas, lai sasniegtu vēlamo prezentācijas loģiku jūsu lietojumprogrammai.

Atsauces:
[1] https://www.mvvmcross.com/documentation/fundamentals/view-presenters
[2] https://blog.ostebaronen.dk/2018/01/mvvmcross-tonging-target.html
[3] https://gregshackles.com/presenters-in-mvvmcross-a-primer/
[4] https://dotnet.libhunt.com/mvvmcross-alternatives
[5] https://www.mvvmcross.com/documentation/advanced/custom-data saistoši
[6] https://stackoverflow.com/questions/18735497/mvvmcross-navigation-on-creen
[7] https://stackoverflow.com/questions/22601018/what-are-the-alternatives-of-module-view-presentermvp-dezign--pattern
,
[9] https://www.mvvmcross.com/documentation/advanced/customing-using-app-and-setup