零碎知识点

MVC/MVP/MVVM模式的区别

2020-10-02  本文已影响0人  前端小阿坤

MVC:

MVC分为model、view、controller三层,三者是相互联系的,之间进行单方向的通信。

用户对view进行操作之后,controller捕获到这个操作,进行相应的操作,决定调用model层哪一个接口进行相应的业务逻辑,model层执行完操作之后,将数据变更的消息传递出去,view层就通过观察者模式,获取到数据的更新,也就进行相应的视图更新。由于view层和model之间的这种关系,导致了view层强依赖于model层。

MVP:

MVP分为model、view、presenter三层。

用于对view进行操作之后,presenter捕获到操作,进行相应的业务逻辑,然后对model进行操作,model层完成数据变更的操作之后,通过观察者模式将数据变更的消息传递出去,但是接收消息的不是view层,而是presenter层,presenter接收消息之后,view进行相应 视图的更新。也就是,view层不直接与model进行通信。

MVVM:

MVVM分为model、view、viewModel三层。

MVVM的调用关系与MVP一致。但是唯一不同的是在viewModel存在binder可以实现双向数据绑定,只需要在view的模板语法中,指令式地声明显示的内容与model中哪一块数据绑定。当用户对view进行操作时,通过binder就会实现在model上数据的更新,当model层数据发生改变,通过binder,view也会进行相应的视图更新。

上一篇 下一篇

猜你喜欢

热点阅读