Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mvvmcross


Mvvmcross


MVVMCross-це потужна, впевнена, MVVM (модель-View-ViewModel), розроблена для розробки міжплатформної програми в екосистемі .NET. Він підтримує різні платформи, включаючи xamarin.ios, xamarin.android, xamarin.forms, Universal Windows Platform (UWP), Presentation Foundation Windows (WPF) та багато іншого [1] [3] [4]. Ось огляд його ключових особливостей та того, як він працює:

Основні особливості MVVMcross

- Шаблон архітектури MVVM: MVVMCross реалізує шаблон MVVM, яка розділяє логіку програми на три взаємопов'язані компоненти: модель, перегляд та ViewModel [3].
-Навігаційна система: вона забезпечує надійну навігаційну систему, що дозволяє легко керувати переходами ViewModel-to-ViewModel [2] [4].
- Зв'язування даних: MVVMCross включає налаштований двигун прив'язки, що дозволяє розробникам створювати власні прив’язки для своїх поглядів [4].
- Інверсія контролю (МОК) та ін'єкція залежності: Рамка підтримує МОК за допомогою ін'єкції залежності, полегшення пухкого з'єднання та перевірки [3] [4].
-Підтримка специфічної для платформи: вона пропонує широку підтримку функцій та функціональних можливостей, специфічних для платформи [3].
- Плагіни та розширення: MVVMCross включає плагінову рамку, яка дозволяє розробникам легко інтегрувати додаткові функціональні можливості, такі як GPS, локалізація та інше [4].

Як працює mvvmcross

основних та інтерфейсних проектів

Програми MVVMcross зазвичай складаються з двох основних частин:

- Основний проект: Він містить ділову логіку, ViewModels, Services та моделі. Зазвичай він реалізується як стандартна бібліотека .NET для забезпечення сумісності міжплатформування [2].
- Проекти інтерфейсу: кожна платформа (наприклад, iOS, Android) має власний проект інтерфейсу, який включає конкретний код платформи та перегляди, що взаємодіють з основним проектом [2].

Ключові об'єкти та ініціалізація

- Клас додатків: Розташований у основному проекті, цей клас відповідає за реєстрацію власних об'єктів за допомогою контейнера МОК та ініціалізації логіки програми [2].
- Об'єкт AppStart: Необов’язково цей об'єкт визначає, який ViewModel представити спочатку під час запуску програми [2].
- Клас налаштування: Знайдено в кожному проекті платформи, цей клас ініціалізує MVVMCross та реєструє специфічні послуги платформи [2].

Процес ініціалізації

1. Запуск платформи: починається процес запуску рідної платформи.
2. Налаштування MVVMcross: Клас `Setup` ініціалізує рамку за два кроки:` itivizeprimary` (основна потік) та `itivizeEcondary` (фоновий потік) [2].
3. Ініціалізація додатків: клас `App` ініціалізований, і він забезпечує об'єкт` appstart` для управління першим кроком навігації [2].

Початок роботи з mvvmcross

Щоб розпочати новий проект MVVMCross, розробники можуть використовувати шаблони, такі як MVXScaffolding. Рамка доступна через пакети Nuget, які повинні бути встановлені як в основних, так і в платформі проектів [3] [4]. Для детальних посібників та документації офіційний веб -сайт MVVMcross та сховище Github - відмінні ресурси [1] [4].

Цитати:
[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