MVC设计思想

MVC是一种软件架构的思想,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离;

(1)模型: 业务逻辑包含了业务数据的加工与处理以及相应的基础服务(为了保证业务逻辑能够正常进行的事务、安全、权限、日志等等的功能模块);

(2)视图:展现模型处理的结果;另外,还要提供相应的操作界面,方便用户使用。

(3)控制器:视图发请求给控制器,由控制器来选择相应的模型来处理;模型返回的结果给控制器,由控制器选择合适的视图。

jsp+servlet:

优缺点 :

1、低耦合性 
前后端分离,更有效率。 
  视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。

2、高重用性和可适用性

  MVC模式允许你使用各种不同样式的视图来访问同一个服务器端的代码。它包括任何WEB(HTTP)浏览器或者无线浏览器(wap),比如,用户可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的。由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。例如,很多数据可能用HTML来表示,但是也有可能用WAP来表示,而这些表示所需要的命令是改变视图层的实现方式,而控制层和模型层无需做任何改变。

3、较低的生命周期成本

  MVC使开发和维护用户接口的技术含量降低。

4、快速的部署

  使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。

5、可维护性

  分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。

6、有利于软件工程化管理

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

缺点: 
使用mvc,会增加代码量、相应地也会增加软件开发的成文,设计的难度也会增加。一些小项目,完全可以不用。

思想:

MVC应用程序总是由三个部分组成.Event(事件)导致Controller改变Model或View,或者同时改变两者.只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新.类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己 。

  MVC模式是一个复杂的架构模式,其实现也显得非常复杂,但多种设计模式结合在一起,使MVC模式的实现变得相对简单易行.Views可以看作一棵树,显然可以用Composite Pattern来实现.Views和Models之间的关系可以用Observer Pattern体现.Controller控制Views的显示,可以用Strategy Pattern实现.Model通常是一个调停者,可采用Mediator Pattern来实现.

原文地址:https://www.cnblogs.com/goodbye-lazy/p/10368932.html

时间: 2024-10-07 15:58:36

MVC设计思想的相关文章

MVC 设计思想

MVC 不是一种设计模式,而是一种设计思想 设计模式:是一种固定方法.不灵活,有特定的使用场景 设计思想:是一种思想,比较灵活,有多重设计模式组合实现.  MVC设计思想: V(view):主要功能展示数据,只要有数据即可,不关心数据的来源 M(model):主要功能提供数据(主要用来提供数据并不关心数据要谁显示). C(Controller):主要功能:协调V与M.作为V与M沟通的桥梁(中介).(controller负责给M要数据,然后控制数据让哪个View来显示) Model类 : 存储数据

MVC设计思想,抽象工厂

MVC设计思想:        V(view): 主要功能是展示数据.(主要有数据即可,不关心数据的来源).        M(Model):主要功能提供数据.(主要用来提供数据,并不关心数据让谁显示)     C(Controller):主要功能协调V与M.作为V与M沟通的桥梁.(中介).(Controller负责给M要要数据,然后控制数据让哪一个View来显示)    //抽象工程设计模式    //提供一个抽象的基类(提供基本的功能),使用时使用具体的子类.    //比如UIView ,

讨论Android开发中的MVC设计思想

最近闲着没事,总是想想做点什么.在时间空余之时给大家说说MVC设计思想在Android开发中的运用吧! MVC设计思想在Android开发中一直都是一套比较好的设计思想.很多APP的设计都是使用这套方案完成架构设计的. 谈到MVC我想分为以下几个点分点突进. 1.什么是MVC框架. 2.MVC如何工作 3.MVC的缺点 4.Android之MVC设计模式. 一.什么是MVC框架. MVC英文即Model-View-Controller,即把一个应用的输入.处理.输出流程按照Model.View.

安卓MVC设计思想(转载)

觉得这个作者理解的很不错,转载过来. 转载地址:http://www.2cto.com/kf/201506/405766.html 框架模式 MVC 在Android中的使用 2015-06-08      0个评论    来源:废墟的树的专栏   收藏    我要投稿 算来学习Android开发已有2年的历史了,在这2年的学习当中,基本掌握了Android的基础知识.越到后面的学习越感觉困难,一来是自认为android没啥可学的了(自认为的,其实还有很多知识科学),二来网络上的很多框架已经帮我

转: MVC设计思想简介

模型-视图-控制器(MVC)是80年代Smalltalk-80出现的 一种软件设计模式,现在已经被广泛的使用. 1.模型(Model) 模型是应用程序的主体部分.模型表示业务数据,或者业务逻辑. 2.视图(View) 视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面. 3.控制器(controller) 控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态. MVC 式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性. 早期的程序中,

[javaEE] javaweb的mvc设计思想

Servlet:在Servlet中拼接html内容 JSP:在html中拼接java JSP+JavaBean:利用javaBean将大量的代码提取走 Servlet+JSP+JavaBean:Servlet是控制器,javabean封装数据,jsp展示数据 javaweb的经典三层结构: dao javabean servlet ==> service jsp javabean: javabean是一个遵循特定写法的java类 1.这个java类必须有一个无参的构造函数 2.属性必须私有化 3

传统ASP.NET开发和MVC的设计思想

传统ASP.NET开发 第一步:客户端请求服务器: 第二步:服务器从数据库取得数据处理后响应给客户端页面. MVC的设计思想 第一步:客户端请求控制器(里面的一个方法): 第二步:控制器从数据库里取得数据填充到模型里面: 第三步:控制器把模型交给视图: 第四步:视图响应呈现给客户端.

Spring MVC 设计架构思想

在整个Spring设计思想中,切面模块思想十分重要. 在Spring MVC Controller中是面向Model编程的. 不管是Cookie,Session,或是postData 都会被转换成Models, 最后,Models也会根据注解被自动转换为 Cookie, Session,  或者页面.

React框架为什么这么火:React的设计思想

原文链接:http://mp.weixin.qq.com/s?__biz=MzA5Njc3Njk5NA==&mid=2650528748&idx=1&sn=4d3093e963ce76c642eb0c5d9a97625b#rd React的起源 React来自于Facebook,是的,就是那个你们听说过但是打不开的网站.Facebook的开发者当时在开发一个广告系统,因为对当前所有的MVC框架不满意,所以就自己写了一个UI框架,于是就有了React.后来因为觉得实在是好用,所以在2