Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon MVVMCross如何改善跨平台应用中的代码重复使用


MVVMCross如何改善跨平台应用中的代码重复使用


MVVMCross通过利用模型视图 - 视图模型(MVVM)架构模式来显着改善跨平台应用中的代码重复使用。这就是它的实现方式:

1。关注点的分离:MVVMCross通过将应用程序分为两个主要部分:核心和UI,促进了明确的关注点。核心项目通常是便携式类库(PCL)或.NET标准库,其中包含所有视图,模型和业务逻辑。这允许在不同平台上重新使用最大代码,因为业务逻辑与平台特定的代码[1] [2] [7]分离。

2。核心项目中的ViewModels:通过将ViewModels放置在核心项目中,MVVMCross使开发人员能够在多个平台上共享这些组件。这意味着可以在iOS,Android和Windows [1] [3] [9]等不同平台上进行修改而无需修改用户交互,数据操作和导航的逻辑。

3。数据绑定:MVVMCROSS支持数据绑定,该数据将在ViewModel中发生更改时自动更新UI。此功能对于维持跨平台的一致性并减少对手动UI更新的需求至关重要,进一步增强代码重复使用[4] [5]。

4。依赖注入和插件:MVVMCROSS包括插件架构和依赖注入(DI)功能。这些功能使开发人员可以以一种可以轻松地从核心项目访问和重复使用的方式来实现平台特定的功能。这意味着,尽管UI层必须是特定于平台的,但仍可以共享许多基本功能[3] [9]。

5。导航和查看主持人:MVVMCross提供了功能强大的ViewModel-trist Navigation系统,该系统允许从核心项目中编排应用程序导航。这意味着可以集中管理用户交互和屏幕过渡的流动,从而减少了平台特定的导航代码[7]。

6.高效的项目结构:MVVMCross鼓励对项目组织的结构化方法,在UI项目中的核心和特定于平台的代码中平台不可静止的代码之间存在明确的分离。这种结构有助于更轻松地维护和扩展跨平台应用程序[2] [9]。

总体而言,MVVMCross通过集中业务逻辑,利用数据绑定以及提供以统一的方式管理平台特定功能的工具来增强代码的重复使用。这种方法大大减少了重复的代码的数量,并加快了跨平台应用程序开发的速度。

引用:
[1] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phote-phote-build-mvvm-mvvm-apps-with-xamarin-and-mvvmcross
[2] https://www.toptal.com/xamarin/cross-platform-apps-with-xamarin
[3] https://www.suneco.nl/blogs/boost-your-xamarin-native-projects-with-mvvmcross/
[4] https://tiefenauer.github.io/blog/mobile-app-development-with-xamarin-and-mvvmcross-part-part-1-indroduction/
[5] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[6] https://diglib.tugraz.at/download.php?id=576A78335451D&location=browse = browse
[7] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[8] https://www.reddit.com/r/swift/comments/yrqlhu/is_crossplatform_the_future_of_mobile_development/
[9] https://leaware.com/creating-cross-platform-xamarin-applications-using-the-mvvmcross-framework/
[10] https://stackoverflow.com/questions/22409697/maximizing-ui-code-reuse-reuse-with-xamarin-mvvmcross