MVC简介

爱被打了一巴掌 2021-06-11 15:13 988阅读 0赞

MVC是什么?

全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

为什么要用MVC?

在于将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如Windows系统资源管理器文件夹内容的显示方式,下面两张图中左边为详细信息显示方式,右边为中等图标显示方式,文件的内容并没有改变,改变的是显示的方式。不管用户使用何种类型的显示方式,文件的内容并没有改变,达到M和V分离的目的。

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxMTUxNTMxMjgzMg_size_16_color_FFFFFF_t_70watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxMTUxNTMxMjgzMg_size_16_color_FFFFFF_t_70 1

MVC分别的作用?

主要说在B/S程序中的MVC

M:Model,模型,主要包括业务逻辑模块(web项目中的Action、dao类)和数据模块。是应用程序中用于处理应用程序数据逻辑的部分,通常用于表示应用程序核心,一个模型能为多个视图提供数据,减少了代码重复性。

V:View,视图。是应用程序中处理数据显示的部分,通常用于显示数据,视图的创建就是依据模型数据,web视图中一般由jsp和html组成

C:Controller,控制器。是应用程序中处理用户交互的部分,通常用于从视图读取数据,控制输入,并向模型发送数据,交由模型来处理只起了连接作用,不做任何处理

MVC的好处!

一:

更专注

MVC 分层有助于管理复杂的应用程序,可以在一个时间内专门关注一个方面。例如,可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。

简化开发

MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

轻量级

可测试性高

二:

可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。

视图与控制器的可接插性,允许更换视图和控制器对象,而且可以根据需求动态的打开或关闭、甚至在运行期间进行对象替换。

模型的可移植性。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。需要做的只是在新平台上对视图和控制器进行新的修改。

潜在的框架结构。可以基于此模型建立应用程序框架,不仅仅是用在设计界面的设计中。

MVC的不好!

增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。

视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。

视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。

目前,一般高级的界面工具或构造器不支持模式。改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,从而造成MVC使用的困难。

MVC项目中各个文件夹存放的内容

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxMTUxNTMxMjgzMg_size_16_color_FFFFFF_t_70 2

发表评论

表情:
评论列表 (有 0 条评论,988人围观)

还没有评论,来说两句吧...

相关阅读

    相关 spring mvc简介

    1.1.  spring mvc简介 1.1.1.   MVC:Model-View-Control 框架性质的C层要完成的主要工作:封装web请求为一个数据对象、

    相关 WEB MVC简介

    1.web开发中的请求\_响应模型: 2.标准的mvc模型概述 3.webMVC概述 4.web端开发发展历史 1.web开发中的请求\_响应模型:

    相关 Spring MVC简介

    SpringMVC介绍 为什么要使用springMVC? 很多应用程序的问题在于处理业务数据和显示业务数据的视图的对象之间存在紧密耦合。通常,更新业务对象的命令都是

    相关 MVC框架使用简介

            MVC框架,相信大家都不会很陌生,尤其是经历过项目的人,它的大名有耳闻可肯定是由来已久了的。但是MVC的使用上和一般的Asp.net的不同还是了解的很少,下面来