对前端设计模式MVC和MVVM的理解
Model–View–ViewModel(MVVM)
是一个软件架构设计模式,由微软 WPF 和 Silverlight 的架构师 Ken Cooper 和 Ted Peters 开发,是一种简化用户界面的事件驱动编程方式。由 John Gossman(同样也是 WPF 和 Silverlight 的架构师)于2005年在他的博客上发表。
MVVM
源自于经典的 Model–View–Controller(MVC)
模式(期间还演化出了 Model-View-Presenter(MVP)
模式,可忽略不计)。MVVM
的出现促进了 GUI 前端开发与后端业务逻辑的分离,极大地提高了前端开发效率。MVVM
的核心是 ViewModel
层,它就像是一个中转站(value converter),负责转换 Model
中的数据对象来让数据变得更容易管理和使用,该层向上与视图层进行双向数据绑定,向下与 Model
层通过接口请求进行数据交互,起呈上启下作用。如下图所示: