Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mvvmcross


Mvvmcross


„MVVMCross“ yra galinga, vertinama MVVM („Model-View-Viewmodel“) sistema, skirta įvairių platformų programų plėtrai .NET ekosistemoje. Tai palaiko įvairias platformas, įskaitant „Xamarin.ios“, „Xamarin.android“, „Xamarin.Forms“, „Universal Windows“ platformą (UWP), „Windows“ pateikimo fondą (WPF) ir dar daugiau [1] [3] [4]. Čia pateikiama pagrindinių jo funkcijų ir kaip ji veikia:

Pagrindinės MVVMCROSS savybės

- MVVM architektūros modelis: MVVMCross įgyvendina MVVM modelį, kuris išskiria programos logiką į tris sujungtus komponentus: modelis, vaizdas ir peržiūros modelis [3].
-Navigacijos sistema: ji teikia patikimą navigacijos sistemą, leidžiančią lengvai valdyti „ViewModel-to-Viewmodel“ perėjimus [2] [4].
- Duomenų įrišimas: „MVVMCross“ apima pritaikomą įrišimo variklį, leidžiantį kūrėjams sukurti pasirinktinius įrišimus jų vaizdams [4].
- Kontrolės inversija (IOC) ir priklausomybės injekcija: sistema palaiko IOC per priklausomybės injekciją, palengvindamas laisvą sujungimą ir testavimą [3] [4].
-Konkrečios platformos palaikymas: ji siūlo didelę paramą konkrečioms platformos funkcijoms ir funkcijoms [3].
- papildiniai ir plėtiniai: „MVVMCross“ apima papildinio sistemą, leidžiančią kūrėjams lengvai integruoti papildomas funkcijas, tokias kaip GPS, lokalizacija ir dar daugiau [4].

Kaip veikia MVVMCross

Core ir UI projektai

„Mvvmcross“ programas paprastai sudaro dvi pagrindinės dalys:

- Pagrindinis projektas: Jame yra verslo logika, „ViewModels“, „Services“ ir modeliai. Paprastai ji įgyvendinama kaip .NET standartinė biblioteka, siekiant užtikrinti suderinamumą su įvairiomis platformomis [2].
- UI projektai: Kiekviena platforma (pvz., „IOS“, „Android“) turi savo UI projektą, kuriame yra konkrečiai platformos kodas ir rodiniai, sąveikaujantys su pagrindiniu projektu [2].

pagrindiniai objektai ir inicijavimas

- Programų klasė: Pagrindiniame projekte įsikūrusi ši klasė yra atsakinga už pasirinktinių objektų registravimą į IOC konteinerį ir inicijuoti programos logiką [2].
- „AppStart“ objektas: Pasirenkama, šis objektas nustato, kurį „ViewModel“ pirmiausia pristatyti programos paleidimo metu [2].
- Sąrankos klasė: Rasta kiekviename platformos projekte, ši klasė inicijuoja MVVMCross ir registruoja konkrečias platformos paslaugas [2].

inicijavimo procesas

1. Platformos paleidimas: prasideda gimtosios platformos paleidimo procesas.
2. MVVMCross Setup: „Setup“ klasė inicijuoja sistemą dviem etapais: „IniciatizePrimary“ (pagrindinė gija) ir „InitizeSectary“ (fono gija) [2].
3. Programos inicijavimas: „App“ klasė yra inicijuota ir pateikia objektą „AppStart“, kad būtų galima valdyti pirmąjį naršymo veiksmą [2].

pradžia su „Mvvmcross“

Norėdami pradėti naują „MVVMCross“ projektą, kūrėjai gali naudoti tokius šablonus kaip „MvxScaffolding“. Framorą galima įsigyti per „NuGet“ paketus, kurie turėtų būti įdiegti tiek pagrindiniuose, tiek platformos specifiniuose projektuose [3] [4]. Išsamiems vadovams ir dokumentacijai oficiali „MVVMCross“ svetainė ir „GitHub“ saugykla yra puikūs šaltiniai [1] [4].

Citatos:
[1] https://www.mvvmcross.com
[2] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[3] https://www.mvvmcross.com/documentation/getting-started/getting-started
[4] https://github.com/mvvmcross/mvvmcross
[5] https://www.mvvmcross.com/blog/
[6] https://github.com/mvvmcross
[7] https://x.com/mvvmcross?lang=en
[8] https://www.nuget.org/profiles/mvvmcross