Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon mvvmcross


mvvmcross


MVVMCROSS是一个强大的,有用的MVVM(模型视图 - 视图模型)框架,旨在在.NET生态系统内跨平台应用程序开发。它支持各种平台,包括Xamarin.ios,Xamarin.Android,Xamarin.Forms,Universal Windows平台(UWP),Windows Eresentation Foundation(WPF)(WPF)等[1] [3] [4]。这是其关键功能及其工作原理的概述:

MVVMCross的关键功能

-MVVM架构模式:MVVMCross实现MVVM模式,该模式将应用程序逻辑分为三个互连组件:模型,视图和ViewModel [3]。
- 导航系统:它提供了一个强大的导航系统,可以轻松管理ViewModel-to-viewModel Transitions [2] [4]。
- 数据绑定:MVVMCROSS包括一个可自定义的绑定引擎,使开发人员能够为其视图创建自定义绑定[4]。
- 对照(IOC)和依赖注入的反转:框架通过依赖注入,促进松动的耦合和可检验性支持IOC [3] [4]。
- 平台特定的支持:它为平台特定的功能和功能提供了广泛的支持[3]。
- 插件和扩展名:MVVMCross包括一个插件框架,该插件框架使开发人员可以轻松整合GPS,本地化等其他功能[4]。

mvvmcross如何工作

###核心和UI项目

MVVMCross应用程序通常由两个主要部分组成:

- 核心项目:其中包含业务逻辑,ViewModels,Services和Models。通常将其作为.NET标准库实现,以确保跨平台兼容性[2]。
- UI项目:每个平台(例如iOS,Android)都有其自己的UI项目,其中包括特定于平台的代码和与核心项目相互作用的视图[2]。

###关键对象和初始化

- 应用程序类:位于核心项目中,该类负责使用IOC容器注册自定义对象并初始化应用程序逻辑[2]。
- AppStart对象:可选,此对象确定在应用程序启动[2]期间首先要呈现的ViewModel。
- 设置类:在每个平台项目中找到,此类初始化MVVMCross,并注册平台特定的服务[2]。

###初始化过程

1。平台启动:本机平台的启动过程开始。
2。MVVMCROSS设置:“设置”类以两个步骤初始化框架:`'Initializeprimary`(主线程)和`InitializeSecondary'(背景线程)[2]。
3。App初始化:```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