开发者社区> 问答> 正文

MVVM的优缺点?

展开
收起
前端问答 2019-11-24 13:27:21 1460 0
1 条回答
写回答
取消 提交回答
  • 前端问答小助手

    优点:

    1. 分离视图(View)和模型(Model),降低代码耦合,提高视图或者逻辑的重用性:比如视图(View)可以独立于Model变化和修改,⼀个ViewModel可以绑定不同的View上,当View变化的时候Model不可以不变,当Model变化的时候View可以不变。你可以把⼀些视图逻辑放在⼀个ViewModel里面,让很多view重用这段视图逻辑
    2. 提高可测试性:ViewModel的存在可以帮助开发者更好地编写测试代码
    3. 自动更新dom: 利用双向绑定,数据更新后视图自动更新,让开发者从繁琐的手动dom中解放

    缺点:

    1. Bug很难被调试: 因为使用双向绑定的模式,当你看到界面异常了,有可能是你View的代码有Bug,也可能是Model的代码有问题。数据绑定使得⼀个位置的Bug被快速传递到别的位置,要定位原始出问题的地方就变得不那么容易了。另外,数据绑定的声明是指令式地写在View的模版当中的,这些内容是没办法去打断点debug
    2. ⼀个大的模块中model也会很大,虽然使用方便也很容易保证了数据的⼀致性,但是长期持有,不释放内存就造成了花费更多的内存
    3. 对于大型的图形应用程序,视图状态较多,ViewModel的构建和维护的成本都会比较高
    2019-11-24 15:37:52
    赞同 1 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
用RxSwift写易维护易读的愉悦代码 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载