关于 MVC和三层架构 讨论讨论
时间:2011-12-06
来源:互联网
首先说说MVC
MVC 模型层-视图层-控制层 这种架构 实现了前端 后端以及控制层的分离。
优点:分出多层,降低耦合。实现复用。比如一个模型层可以设计多个视图层。
三层架构
业务逻辑层 数据访问层 表现层
也是划分出多层。但是将MVC中的模型层,也就是关于数据的逻辑处理划分为 数据访问层和业务逻辑层。当然,三层架构不是在MVC的基础上划出来的。
相对于MVC,三层架构少了控制层,无法实现表现层和后端模型的灵活控制。相对于三层架构,MVC少了对模型层的进一步划分。业务逻辑层和数据访问层放在在一起。
所以二者首先是不同的,并且都不是完善的。二者结合起来最终由控制层,业务逻辑层,数据访问层,表现层四层。
可以这样理解。MVC解决了前端和后端的控制,在前端,控制,和后端这块降低了耦合度。视图可灵活匹配模型。但是没有将后端的业务逻辑层和数据访问层进行解耦。
三层架构解决了数据访问层,业务逻辑层,表现层的分离。那么这样够了吗?表现层如何和后端进行匹配的呢?(问题1)
如果说三层架构没有解决前端和后端的控制,那么前后端代码还是存在耦合的。虽然理论上有表现层。但是这个表现层可能不够独立。会和后端代码耦合。
综上,结合MVC的前后端解耦。加上三层架构的后端数据访问层和业务逻辑层的分离。组合出来的是二者优点结合的。
表现层+控制层+业务层+数据访问层 这样四层的结构。这样充分二者的优点!
我的实践经验不多,完全属于个人推理。欢迎各种拍砖,相互提高!谢谢!!最好是有实际经验的帮助深入分析下!!谢谢!!
MVC 模型层-视图层-控制层 这种架构 实现了前端 后端以及控制层的分离。
优点:分出多层,降低耦合。实现复用。比如一个模型层可以设计多个视图层。
三层架构
业务逻辑层 数据访问层 表现层
也是划分出多层。但是将MVC中的模型层,也就是关于数据的逻辑处理划分为 数据访问层和业务逻辑层。当然,三层架构不是在MVC的基础上划出来的。
相对于MVC,三层架构少了控制层,无法实现表现层和后端模型的灵活控制。相对于三层架构,MVC少了对模型层的进一步划分。业务逻辑层和数据访问层放在在一起。
所以二者首先是不同的,并且都不是完善的。二者结合起来最终由控制层,业务逻辑层,数据访问层,表现层四层。
可以这样理解。MVC解决了前端和后端的控制,在前端,控制,和后端这块降低了耦合度。视图可灵活匹配模型。但是没有将后端的业务逻辑层和数据访问层进行解耦。
三层架构解决了数据访问层,业务逻辑层,表现层的分离。那么这样够了吗?表现层如何和后端进行匹配的呢?(问题1)
如果说三层架构没有解决前端和后端的控制,那么前后端代码还是存在耦合的。虽然理论上有表现层。但是这个表现层可能不够独立。会和后端代码耦合。
综上,结合MVC的前后端解耦。加上三层架构的后端数据访问层和业务逻辑层的分离。组合出来的是二者优点结合的。
表现层+控制层+业务层+数据访问层 这样四层的结构。这样充分二者的优点!
我的实践经验不多,完全属于个人推理。欢迎各种拍砖,相互提高!谢谢!!最好是有实际经验的帮助深入分析下!!谢谢!!
作者: jiatulangzi123 发布时间: 2011-12-06
按照你的思路去做是完全可以的。
MVC是比较经典的,按你说的,就是把MVC中的M分成业务逻辑和持久层(也就是你说的数据访问层),这样也完全是符合MVC结构的。
我还是第一次听说什么三层架构。表示怀疑
MVC是比较经典的,按你说的,就是把MVC中的M分成业务逻辑和持久层(也就是你说的数据访问层),这样也完全是符合MVC结构的。
我还是第一次听说什么三层架构。表示怀疑
作者: trocp 发布时间: 2011-12-06
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28