码迷,mamicode.com
首页 > Web开发 > 详细

从设计角度分析MVC

时间:2014-11-28 16:22:59      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:mvc


    由于考试系统要用到MVC模式来设计,所以这次通过一些视频和网上的博客对其做了一些了解与学习,下面是一些学习的收获和感受。

    Ps:原来写文章是从来也不写提纲的,现在通过不断的设计训练和代码注释的影响,没提纲就写不下去了……

    言归正传,MVC作为一种软件设计模式,它用一种业务逻辑、数据和界面显示互相分离的方法组织代码。将业务逻辑单独封装,使得在界面及与用户交互的形式改变时不影响到逻辑。

    1、  模式简介

    MVC是一种创建Web应用程序的模式,其中:

       Model(模型)是指要处理的业务代码和数据操作代码;

       View (视图)显示数据,指的是界面及与用户进行交互的部分,视图通常依据Model创建;

       Controller(控制器)处理输入,可以看做Model和View的桥梁。它从视图中读取数据,控制用户输入,并向     模型发送数据。

 

    2、  模式图(来自baidu.baike)

                             bubuko.com,布布扣                                           bubuko.com,布布扣   

    说明:View通过人机交互将用户输入的指令和数据传递给Controller,Controller将其送至Model进行业务判断和数据存取等处理,然后Controller再根据业务逻辑选择不同的视图进行响应,最后将结果反馈给用户。

 

    3、  与webFrom比较

            bubuko.com,布布扣                                                        bubuko.com,布布扣

    对于MVC与WebForm体会还不深刻,孰优孰劣也不敢妄加评论,具体如何还是大家在实践中去体会吧。

先看看上边两张图,以后还会对MVC作进一步的分析。


    4、  与经典三层的比较

    三层架构分为UI界面层、BLL业务逻辑层、DAL数据访问层,它同样做到了界面、业务逻辑和数据的分离。

    从解耦的角度看,MVC和三层架构都实现了很好的效果。都有助于管理复杂的应用程序和分组开发,因为我们可以在一个时间内专门关注一个方面。例如,可以在不依赖业务逻辑的情况下专注于界面/视图设计。同时也让应用程序的测试更加容易。

    区别:1、三层里的UI相当于MVC里的V+CBLL+DAL层相当于MVC里的M

          2侧重点不一样,三层是一种笼统的架构思想,没有限制具体的设计;而mvc就比较具体的说明它的设计方法。

         三层是从整个应用程序架构的角度来分的,是为了解决整个应用程序中各个业务操作过程中不同阶段的代     码封装的问题,为了使程序员更加专注的处理某阶段的业务逻辑。

    MVC是在应用程序(BS结构)的视图层划分出来的不同功能的几个模块。主要是为了解决应用程序用户界面的样式替换问题,把展示数据的HTML 页面尽可能的和业务代码分离。

 

    总结:对于大中型项目MVC在开发效率上更快,但对于一些小项目WebForm从经济和时间上更为合适。架构方面,MVC和三层也并不是排斥的,相反,它们拥有很紧密的联系。总之,MVC有着广阔的发展前景,在J2EE上的火热程度也见证了它的时代适应性。

    初识MVC,还望大家多多指导。

       

 

 

 

 

从设计角度分析MVC

标签:mvc

原文地址:http://blog.csdn.net/u010191243/article/details/41576765

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!