美文网首页
MVVM的优点和缺点

MVVM的优点和缺点

作者: Lemon不怕酸啊 | 来源:发表于2017-03-17 16:13 被阅读0次

MVVM里,controller将不再直接和真实的model进行绑定了,而通过ViewModel,viewModel进行持有真实的Model。

关于MVVM的优点:

方便测试

在MVC下,Controller基本是无法测试的,里面混杂了个各种逻辑,而且分散在不同的地方。有了MVVM我们就可以测试里面的viewModel,来验证我们的处理结果对不对(Xcode7的测试已经越来越完善了)。

便于代码的移植

比如iOS里面有iPhone版本和iPad版本,除了交互展示不一样外,业务逻辑的model是一致的。这样,我们就可以以很小的代价去开发另一个app。(以前做公司iPad的时候就深深感觉到,全部在VC里面是多么的痛苦和重新开发一个没有啥区别)。

兼容MVC

MVVM是MVC的一个升级版,目前的MVC也可以很快的转换到MVVM这个模式。VC可以省去一大部分展示逻辑。

缺点:

类会增多

每个VC都附带一个viewModel,类的数量*2

viewModel会越来越庞大

我们把逻辑给了viewModel,那势必Model也会变得很复杂,里面的属性和方法越来越多。可能重写的方法比较多,因为涉及到一些数据的转换以及和controller之间的通信。

调用复杂度增加

由于数据都是从viewModel来,想想突然来了一个新人,一看代码,不知道真实的模型是谁。比如常用tableview的数据源,一般都是一个数组,如果不断的通过viewModel去取,沟通上没有那么直接。况且每封一层,意味着要写很多代码去融合他们的转换。

相关文章

  • MVVM的优点和缺点

    MVVM里,controller将不再直接和真实的model进行绑定了,而通过ViewModel,viewMode...

  • MVVM的讲解和使用

    Android MVVM 分析以及使用 首先我们需要知道什么是MVVM,他的功能和优点,以及他的缺点。 MVVM是...

  • 优点和缺点

    每个人都有两个袋子,一个袋子在前面装着你的优点,一个袋子在后面装着你缺点,所以你只能看到你的优点而看不到你的缺点,...

  • 缺点和优点

    有位老师进了教室,在白板上点了一个黑点。 他问班上的学生说:「这是什么?」 大家都异口同声说:「一个黑点。」 老师...

  • 缺点和优点

    缺点和优点 祁门县实验学校302班 查文杰 ①每个人都有自己的缺点和优点,我也...

  • 缺点和优点

    阻止一个人前进的 往往不是你的缺点 而是你的优点 因为现实中往往是这样: 完全不能干是不行的 但太能干也是不行的 ...

  • 优点和缺点

    每个人都有缺点,也有优点。世界上没有十全十美的人,圣人也会骂娘。 这两个东西,普通人容易走极端: 有人只看自己的长...

  • 优点和缺点

    我是西西,陈小丹的小女儿,今天我来讲优点和缺点。 什么是优点?什么是缺点?你们小孩子都不知道吧?我就说个这个故事吧...

  • 优点和缺点

    每个人都是独一无二的我,有令人称赞的优点,也有让人批评的缺点,二者是相辅相成相伴而生的,不用为弱点而头疼纠结,也不...

  • 优点和缺点

    为了纠正她每天晚睡的坏习惯,我也必须跟着一起改变作息。下班回家后马上锻炼,然后洗澡吃饭。九点前搞定一切,然后讲故事...

网友评论

      本文标题:MVVM的优点和缺点

      本文链接:https://www.haomeiwen.com/subject/fiwenttx.html