MVVM与MVC

MVVM

是什么?

MVVM模式:就是Model-View-ViewModel模式的简写。

Model:对应数据层的域模型,主要做域模型的同步。通过Ajax等完成客户端和服务端业务 model的同步,在层间关系里,它主要用于抽象出ViewModel中视图的Model。

View:作为视模板存在,在MVVM里,整个View是一个动态模板。它展示的是ViewModel层的数据和状态。View做的是数据绑定的声明、指令的声明和事件绑定的声明。

ViewModel:把View需要的数据暴露,处理View层的具体业务逻辑。当ViewModel中的数据发生变化,View层会得到更新;而当View中声明了双向绑定后,View中绑定的值发生变化后ViewModel 中的数据也会自动更新。

优缺点

  优点

    1.双向绑定技术,当Model变化时,View-Model会自动更新,View也会自动发生变化。

    2.View的功能进一步强化,具有控制的部分功能。

    3.不用再为看到庞大的控制器逻辑发愁。

  缺点

    1.数据绑定使Bug难调,看到界面异常后,可能是View有Bug;也可能是Model代码出了问题。

    2.一个大模块中Model也会很大,虽然方便使用也容易保证数据一致性,但长期持有不释放内存就会花费更多内存。

    3.双向数据绑定不利于代码重用。

 

MVC

是什么?

MVC:MVC是一种框架模式,它采用模型(Model)-视图(View)-控制器(Controller)的方法把业务逻辑、数据和界面分离。MVC的理念就是把数据处理、数据展示程序/用户的交互三者分离的一种编程模式。

优缺点

  优点

    1.多个视图共享一个模型,大大提高了代码的可重用性。

    2.三个模块相互独立,改变其中一个不会影响其他两个。

    3.控制器提高了应用程序的灵活性和可控制性。

  缺点

    1.增加了系统结构和实现的复杂性。

    2.视图与控制器过于紧密连接。

    3.视图与模型的低效率访问。

posted @ 2022-07-20 11:43  奥摩前端  阅读(23)  评论(0编辑  收藏  举报