2021-11-11

MVC与三层架构

系统架构是指,整合应用系统程序大的结构。经常提到的系统结构有两种:

  • 三层架构

  • MVC

1、三层架构

三层架构是指:视图层 View、服务层 Service,与持久层 Dao。它们分别完成不同的功能。

  • View 层:用于接收用户提交请求的代码在这里编写。

  • Service 层:系统的业务逻辑主要在这里完成。

  • Dao 层:直接操作数据库的代码在这里编写。

为了更好的降低各层间的耦合度,在三层架构程序设计中,采用面向抽象编程。 即上层对下层的调用,是通过接口实现的。 而下层对上层的真正服务提供者,是下层接口的实现类。 服务标准(接口)是相同的,服务提供者(实现类)可以更换。 这就实现了层间解耦合。

2.MVC

  • MVC,即 Model 模型、View 视图,及 Controller 控制器。

  • M:(Model) 模型 : 应用程序的核心功能,管理这个模块中用的数据和值;

  • V(View )视图: 视图提供模型的展示,管理模型如何显示给用户,它是应用程序的外观;

  • C(Controller)控制器: 对用户的输入做出反应,管理用户和视图的交互,是连接模型和视图的枢纽。

MVC用于将web(UI)层进行职责解耦

MVC 架构程序的工作流程:

(1)用户通过 View 页面向服务端提出请求,可以是表单请求、超链接请求、AJAX 请求等 (2)服务端 Controller 控制器接收到请求后对请求进行解析,找到相应的 Model 对用户请求进行处理 (3)Model 处理后,将处理结果再交给 Controller (4)Controller 在接到处理结果后,根据处理结果找到要作为向客户端发回的响应 View 页面。页面经渲染(数据填充)后,再发送给客户端。

3.MVC与三层架构的异同

1.不同点

三层架构是程序设计的一种典型架构方式,确立项目后首先做的是对其进行架构设计,三层架构就是把应用程序的分层,从而降低各个模块之间的耦合。而MVC是程序的一种设计模式,即应用程序确立架构后再根据需求决定是否要采用的一种模式, 是一种使程序代码变得条理、逻辑、通用的代码规范。因此二者的区别也就显现出来了,三层架构是一种架构方式而MVC是一种设计模式(或者说是一种设计思想)。

三层架构的分层模式是典型的上下关系,上层依赖于下层。但MVC作为表现模式是不存在上下关系的,而是相互协作关系。即使将MVC当作架构模式,也不是分层模式。MVC和三层架构基本没有比较的意义,是应用于不同领域的技术。

2.相同点

MVC与三层架构虽然说实质是不同的,但在所达到的目的、所实现的效果是相同的,二者都是为了应用程序解耦,即使应用程序达到”高内聚,低耦合“的目的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值