MVVM – 优势
MVVM 模式最终是 MVC 模式的现代结构,因此主要目标仍然是提供域逻辑和表示层之间的明确分离。以下是 MVVM 模式的一些优点和缺点。
主要优点是允许视图和模型之间实现真正的分离,而不仅仅是实现分离以及由此获得的效率。实际上,这意味着当您的模型需要更改时,可以轻松更改模型而无需更改视图,反之亦然。
应用 MVVM 有三个重要的关键因素,如下所示。
可维护性
对不同类型的代码进行清晰的分离应该可以更轻松地进入一个或多个更细粒度和更集中的部分,并无忧无虑地进行更改。
这意味着您可以保持敏捷并快速推出新版本。
可测试性
使用 MVVM,每段代码都更加细粒度,如果正确实施,您的外部和内部依赖项将与您想要测试的核心逻辑部分分开。
这使得编写单元测试变得容易得多核心逻辑。
确保它在编写时正常工作,并且即使在维护过程中发生变化时也能继续工作。
可扩展性
由于清晰的分离边界和更细粒度的代码片段,它有时与可维护性重叠。
您有更好的机会使这些部分中的任何一个更具可重用性。
它还能够替换或添加执行类似操作的新代码片段到架构中的正确位置。
MVVM 模式的明显目的是抽象视图,从而减少代码隐藏中的业务逻辑量。但是,以下是其他一些明显的优势和缺点;
- 与代码隐藏或事件驱动代码相比,ViewModel 更容易进行单元测试。
- 您可以测试它而不需要笨拙的 UI 自动化和交互。
- 表示层和逻辑是松散耦合的。
缺点
- 有些人认为,对于简单的 UI,MVVM 可能有点过头了。
- 同样,在更大的情况下,设计 ViewModel 可能很困难。
- 当我们有复杂的数据绑定时,调试会有点困难。