对于angular 中MVC 和 MVVM 的一些个人理解
2017-03-31 14:52
405 查看
首先我们先从字面上理解一下 MVC :
M----> model 模型层(一般用于数据存储,存储一些业务逻辑),也就是我们说的数据模型。
V-----> view 视图层(界面),用来展示数据。
C-----> controller 控制层(管理),调度业务逻辑,联系数据和模板之间工作的逻辑代码。
MVC 是一种设计思想:
要了解这种思想,我们先来了解一下web 开发经历的几个阶段:
web 开发经服务器只读文件发送的时代, 然后经历了在服务器端拼接字符串生成html发送的时代,接着经历了分布式任务交给浏览器执行的时代,需求会不断的变化, 自然引入了模板, 也就有了分离的思想.
所以我们很自觉的将数据分离出来, 模板就是试图, 中间的逻辑代码就是控制器.
接下来我们可以这样理解MVC:
所谓的MVC就是 我们把网页代码按照视图 ,数据模型 和 控制器的方式进行分离;视图控制网页格式,数据模型控制数据,控制器就是联系数据和模板之间如何工作的逻辑代码。
MVC的处理过程:首先控制器接受用户的请求,调用相应的模型来进行业务处理,并返回数据给控制器。控制器调用相应的视图来显示处理的结果。并通过视图呈现给用户。
view发送指令到controller--->controller完成逻辑之后,要求model改变状态--->model将新的数据发送到view,用户得到反馈。
MVC所有的通信都是单向的;
MVVM是MVC的变种和进阶,我们从字面上了解一下MVVM
:
M----> model 模型层(一般用于数据存储,存储一些业务逻辑),也就是我们说的数据模型。
V-----> view 视图层(界面),用来展示数据。
VM--> ViewModel(视图模型) 也就是$scope。
在实际应用中,更多的是进行页面交互,而最后一次性向服务器提交处理(弱化了MVC中控制器的功能),增强了视图与模型的使用,因此将此称之为MVVM.
以前有人说过一句话:任何一个不能做的事情只要在中间加一层就可以实现了--我们在model 和 view 中间添加了一层ViewModel。
看图理解MVVM:
M----> model 模型层(一般用于数据存储,存储一些业务逻辑),也就是我们说的数据模型。
V-----> view 视图层(界面),用来展示数据。
C-----> controller 控制层(管理),调度业务逻辑,联系数据和模板之间工作的逻辑代码。
MVC 是一种设计思想:
要了解这种思想,我们先来了解一下web 开发经历的几个阶段:
web 开发经服务器只读文件发送的时代, 然后经历了在服务器端拼接字符串生成html发送的时代,接着经历了分布式任务交给浏览器执行的时代,需求会不断的变化, 自然引入了模板, 也就有了分离的思想.
所以我们很自觉的将数据分离出来, 模板就是试图, 中间的逻辑代码就是控制器.
接下来我们可以这样理解MVC:
所谓的MVC就是 我们把网页代码按照视图 ,数据模型 和 控制器的方式进行分离;视图控制网页格式,数据模型控制数据,控制器就是联系数据和模板之间如何工作的逻辑代码。
MVC的处理过程:首先控制器接受用户的请求,调用相应的模型来进行业务处理,并返回数据给控制器。控制器调用相应的视图来显示处理的结果。并通过视图呈现给用户。
view发送指令到controller--->controller完成逻辑之后,要求model改变状态--->model将新的数据发送到view,用户得到反馈。
MVC所有的通信都是单向的;
MVVM是MVC的变种和进阶,我们从字面上了解一下MVVM
:
M----> model 模型层(一般用于数据存储,存储一些业务逻辑),也就是我们说的数据模型。
V-----> view 视图层(界面),用来展示数据。
VM--> ViewModel(视图模型) 也就是$scope。
在实际应用中,更多的是进行页面交互,而最后一次性向服务器提交处理(弱化了MVC中控制器的功能),增强了视图与模型的使用,因此将此称之为MVVM.
以前有人说过一句话:任何一个不能做的事情只要在中间加一层就可以实现了--我们在model 和 view 中间添加了一层ViewModel。
看图理解MVVM:
相关文章推荐
- 对于NHibernate中延迟加载个人的一些理解
- 个人对于套接字的一些理解!
- 对于AOP切面编程的一些个人理解
- 个人对于OO的一些理解
- 个人对于补码的一些理解
- 个人对于OO的一些理解
- 对于Java转型的一些个人理解
- 对于MVC应该理解的一些问题
- 对于CN Payroll我的一些个人理解
- 【原创】关于操作符重载的一些个人理解
- 转 本人对于“用例”的一些理解和总结
- 对于Android中消息机制的一些理解
- 关于MVC的一些理解
- 对于面向对象的一些通俗的理解。
- 对asp.net mvc 下使用JQGrid的一些个人想法
- 本人对于“用例”的一些理解和总结
- 我对php的mvc的一些理解,以及自己写的框架
- 我个人对于Linux 的一些问题 .
- ASP.NET MVC关于验证的个人理解
- 个人对于Directshow的理解 回复otisyf