MVC设计模式(三层模型原理及优缺点详解)

MVC设计模式(三层模型原理及优缺点详解)-mikechen

什么是MVC设计模式?

MVC是模型(Model)、视图(View)、控制器(Controller)的缩写,即Model View Controller(MVC),MVC是一种设计模式。

MVC设计模式(三层模型原理及优缺点详解)-mikechen

 

MVC设计模式优缺点?

1.MVC设计模式优点

1)低耦合性

视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码。

 

2)可维护性

model 和view能够单独的开发,增加了程序的可维护性,且可扩展性并使测试变得容易。

 

3)复用性

由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码,提高代码复用性。

 

2.MVC设计模式缺点

  • 不适合小型等规模的应用程序,花费大量时间将MVC应用到规模并不是很大的应用程序通常会得不偿失;
  • 增加了系统结构和实现的复杂性;
  • 视图对模型数据的低效率访问。

 

MVC设计模式工作原理

比如大家使用较多的SpringMVC,其实就是MVC设计模式的一种体现。

具体如下图所示:

MVC设计模式(三层模型原理及优缺点详解)-mikechen

1.模型(Model)

模型封装了数据及对数据的操作,可以直接对数据库进行访问。

简要的讲:就是一个或多个javabean对象,用于存储数据和业务逻辑。

 

2.视图(View)

视图负责展示,没有具体的程序逻辑,比如:一个JSP页面想控制器提交数据和为模型提供数据显示,JSP页面主要使用HTML标记和JavaBean标记来显示数据。

 

3.控制器(Controller)

控制器用于控制程序的流程,将模型中的数据展示到视图中。

比如:Servlet对象根据视图提交的请求进行控制,即将请求转发给业务逻辑的javabean,并将处理记过存放到实体模型javabean中,输出给视图显示。

 

MVC设计模式小结

总之我们通过 MVC 设计模式,最终可以打造出一个低耦合、高可重用性、复用性更高的架构模式。

作者简介

陈睿|mikechen,10年+大厂架构经验,BAT资深面试官,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

👇阅读更多mikechen架构文章👇

阿里架构 |双11秒杀 |分布式架构 |负载均衡 |单点登录 |微服务 |云原生 |高并发 |架构师

以上

关注作者「mikechen」公众号,获取更多技术干货!

后台回复架构,即可获取《阿里架构师进阶专题全部合集》,后台回复面试即可获取《史上最全阿里Java面试题总结

评论交流
    说说你的看法