Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Milyen szerepet játszik a beállítási osztály az mvvmcross -ban


Milyen szerepet játszik a beállítási osztály az mvvmcross -ban


Az MVVMCross beállítási osztálya döntő szerepet játszik a keretrendszer bootstrapperként, amely felelős az alkalmazás infrastruktúrájának inicializálásáért és konfigurálásáért. Ez egy kötelező alkotóelem minden platformspecifikus projektben, például iOS, Android vagy UWP, és számos kulcsfontosságú funkciót szolgál:

1. keretrendszer inicializálás: A beállítási osztály inicializálja az MVVMCross keretet olyan alapvető összetevők beállításával, mint a vezérlő (IOC) tartály, az adatkötő motor, a ViewModel/View keresések, a navigációs rendszer és a pluginok inverziója. Ez a folyamat két fő lépésben történik: `inicializePrimary` és„ InicializeseSecondary ”. Az előbbi inicializálja a fő szál alapkomponenseit, míg az utóbbi a háttérben platformszolgáltatásokat épít [1] [9].

2. App osztály létrehozása: A beállítási osztály felelős az „App” osztály példányának létrehozásáért, amelyet az alapvető projektben határoznak meg. Az „App” osztály inicializálja az alkalmazás üzleti logikáját és a ViewModels -t [4] [10].

3. Szolgáltatási regisztráció: Helyet biztosít a platformspecifikus szolgáltatások és pluginok regisztrálására a NOB konténer segítségével. Ez lehetővé teszi a fejlesztők számára, hogy függőségeket injektáljanak az alkalmazásukba, megkönnyítve a komplex logika kezelését a különböző platformokon [4] [10].

4. Testreszabás: A beállítási osztály lehetőséget kínál a testreszabásra olyan módszerekkel, mint a „inicializeFirstchance” és a „InitializeLastCance”. Ezek a módszerek lehetővé teszik a fejlesztők számára, hogy regisztrálják a platformspecifikus üzleti objektumokat vagy szolgáltatásokat, például a titkosítási szolgáltatásokat, mielőtt az alkalmazás teljes inicializálása előtt [10].

5. Hibakeresés és naplózás: Ez részt vesz a hibakeresési és naplózási mechanizmusok beállításában is, például egy „Debugtrace” példány létrehozásában, amely elősegíti a problémák diagnosztizálását a fejlesztés során [7].

Összefoglalva: a beállítási osztály elengedhetetlen az MVVMCross alkalmazások elindításához, biztosítva, hogy az összes szükséges összetevő megfelelően inicializálódjon és konfiguráljon az alkalmazás megkezdése előtt. Hídként működik a platformspecifikus felhasználói felület projekt és a hordozható osztálykönyvtár (PCL) vagy a .NET Standard könyvtárban meghatározott alap logika között.

Idézetek:
[1] https://www.mvmcross.com/documentation/tutorials/tipcalc/a-xamarinios-ui-project
[2] https://stackoverflow.com/questions/34329985/
[3] https://coderpad.io/blog/development/a-guide-to-database-unit-stesting-with-pytest-and-sqlalchemy/
[4] https://leaware.com/creating-cross-platform-xamarin-pplications-Uning-the-mvvmcross-framework/
[5] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvvm-apps-with-xamarin-and-mvvmcross
[6] https://stackoverflow.com/questions/17602137/mvvmcross-how-does-this-view-get-t-the-viewmodel/17602246
[7] https://www.codeproject.com/articles/863695/introduction-to-mvvmcross platform
[8] https://nicksnettravels.builttoroam.com/post-2017-12-28-making-mvvmcross-with-xamarin-forms-friction-freaspx/
[9] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[10] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-andsetup
[11] https://stackoverflow.com/questions/48132099/how-is-etup-class-instantiated-in-mvvmcross-in-xamarin