Bej*_*asc 1 mvvm xamarin xamarin.forms
我承认 MVVM(模型、视图、ViewModel)的模式具有“模型”(数据片段)、视图(接口)和视图模型(数据和接口之间的逻辑)。
对于 Xamarin 表单,有Page.Xaml, 和Page.Xaml.cs。
如果我的整个界面都是用 xaml 编码的,并且代码隐藏文件中没有编写任何 GUI。
这是否意味着Page.xaml.csxamarin 表单页面是 ViewModel?
我目前的结构如下..
不。
确定这一点的相对简单的方法是:代码可以在单元测试中进行测试吗?
Page.xaml.cs 中的代码需要实例化页面才能进行测试。由此产生的复杂性和依赖性使得不可能将其称为单元(隔离)测试。
MVVM 的目标之一是提高代码的可测试性。后面的代码很难测试。
业务逻辑属于ViewModel 和Model。背后的代码在其 DataContext 中“查找”其 ViewModel,并且应该仅通过绑定传播值并在 ViewModel 上执行命令。不应该有业务逻辑,因为它无法测试。
代码隐藏应该只关心显示逻辑和用户交互(拖放、单击、排序等),在大多数情况下,此逻辑已经在现有控件中可用,并且可以通过 XAML 进行配置。
| 归档时间: |
|
| 查看次数: |
2150 次 |
| 最近记录: |