APP下载

基于MVC框架的ASP.NET研究

2014-12-11周润苗

中国科技纵横 2014年24期
关键词:设计模式开发人员控件

周润苗

(湖南应用技术学院信息工程学院,湖南常德 415100)

基于MVC框架的ASP.NET研究

周润苗

(湖南应用技术学院信息工程学院,湖南常德 415100)

ASP.NET支持三种模式:Web Pages、MVC(Model View Controller)以及Web Forms,MVC是较受欢迎的设计模式,在ASP.NET 3.5基础之上,ASP.NET MVC提供了一个新的模型-视图-控制器框架;在Web应用开发技术中,越来越多的软件开发采用了MVC模式。本文将通过对ASP.NET MVC框架的研究来改革ASP.NET的教学内容将其从传统的ASP.NET Web Forms模式转向MVC开发模式。

MVC Web Forms 设计模式

当今软件行业蓬勃发展,对于软件开发,WEB开发是大势所趋,ASP.NET课程是本科及高职院校培养WEB开发人才的一大选择,但许多职业院校ASP.NET教学还停留在的Web Forms模式上,有的甚至采用ASP作为主要教学内容。这将给学生的实际工作带来一定的困扰。

ASP.NET是一个开发框架,用于通过HTML、CSS、JavaScript以及服务器脚本来构建网页和网站。

ASP.NET支持三种开放模式:Web Pages、MVC(Model View Controller)以及Web Forms,在Web应用开发技术中,越来越多的软件开发采用了MVC模式。如何将ASP.NET的教学内容从传统的ASP.NET事件驱动模式转向MVC开发模式是十分有必要的,也是十分紧迫的一项工作。

1 MVC模式

1.1 MVC模式介绍

MVC(Model-View-Controller,模型-视图-控件器)模式是上世纪70年代末提出的,运用于Smalltalk平台上,至今已被广泛使用的一种软件设计模式。MVC模式的目的是增加代码的重用率,减少数据的耦合度,使用软件可维护性,可扩展性、可修复性、封装性和灵活性大提高,跟,随微软公司的.NET战略的推进,越来越多的软件开发人员也将MVC模式应用到ASP.NET开发中去,以缩短系统开发周期,达到节约成本的目的。

MVC模式将应用分为模型、视图和控制器三个部分:

视图(View):数据的展现。视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并能接收用户的输入数据,但是它并不进行任何实际的业务处理。视图可以向模型查询业务状态,但不能改变模型。视图还能接受模型发出的数据更新事件,从而对用户界面进行同步更新。

模型(Model):应用对象。模型是应用程序的主体部分。模型代表了业务数据和业务逻辑; 当数据发生改变时,它要负责通知视图部分;一个模型能为多个视图提供数据。由于同一个模型可以被多个视图重用,所以提高了应用的可重用性。

控制器(Controller):逻辑处理、控制实体数据在视图上展示、调用模型处理业务请求。当Web用户单击Web页面中的提交按钮来发送 HTML 表单时,控制器接收请求并调用相应的模型组件去处理请求,然后调用相应的视图来显示模型返回的数据。

1.2 MVC模式运行机制

如图所示为MVC模式运行机制:

在MVC模式中,Web用户向服务器提交的所有请求都由控制器接管。接受到请求之后,控制器负责决定应该调用哪个模型来进行处理;然后模型根据用户请求进行相应的业务逻辑处理,并返回数据;最后控制器调用相应的视图来格式化模型返回的数据,并通过视图呈现给用户。

1.3 MVC模式的优、缺点

优点:(1)MVC的这种拆分有助于软件开发者管理复杂的应用程序,因为程序员能够在同一时间关注一个方面。例如,程序员可以在不依赖业务逻辑的情况下对视图进行设计。同时对应用程序的设计也更加容易。(2)MVC的这种拆分同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。(3)能够对HTML有完全的控制权限,对于前端来说很友好。(4)能够进行单元测试,保证功能的实现。

缺点:(1)没有那么多的现成控件使用,开发效率相对较低。(2)对于大型数据的处理比较难,还是因为没有现成girdview控件。

2 基于MVC框架的ASP.NET教学在我院的实施

2.1 前提

我学院办学以来,非常重视各个学科的专业技能培养,ASP.NET课程是信息工程学院各专业的专业核心课程,校内有专门的ASP.NET WEB开发实训室,学校签署有软件开发公司作为我院web开发的实训基地。

2.2 实施

“基于MVC框架的ASP.NET教学”将作为网站建设实训的内容安排在学生离开学校之前的第五学期,安排在这一学期的目的是学生已完成了asp.net基础,数据库语句,C#等前置课程的学习。通过“基于MVC框架的ASP.NET教学”的学习要求学生掌握:如何用Visual Studio来建立一个ASP.NET MVC Web Application;

如何创建一个新的ASP.NET MVC项目;

如何用SQL Server创建新的数据库;

如何创建ASP.NET MVC的控制器和视图;

如何检索和显示数据;

如何编辑数据和检验数据的有效性;如何更新数据库模式。

2.3 意义

在信息工程学院课程定位及学院“六业”(产业、行业、专业、学业、就业、创业)贯通人才培养模式下,构建跟行业对接的ASP.NET的MVC框架教学模式,具有良好的现实意义,能使学生一走向工作岗位就能很好的适应相应的工作。

3 结语

在高职院校的教学过程中大多采用ASP.NET Webform技术,它更接近可视化设计,开发者只需要从设计面板中拖拽控件即可完成UI,接着在behind code中实现逻辑代码即可完成最后的Web页面功能,这有利于学生学习,但是这种behind code模式存在相应的问题:紧耦合,ASPX.CS文件和ASPX文件却紧密的联系在一起,这将导致系统的耦合度很高,并且很难解耦和,这是一个很头疼的问题;视图展现数据,视图决定了展现的数据,视图的扩展性就很差,如果遇到复杂的数据结构,这种方式就显得力不从心;将behind code当做普通的类来进行单元测试,behind code后台代码在Webform中是一个非常庞大的类,并且不能简单地实例化。

ASP.NET MVC框架是在ASP.NET 3.5版基础之上建立的,程序员可利用现有的ASP.NET 3.5功能,如授权,简介,定位等,使用特定的Visual Studio MVC模板建立自己的Web程序,并为Web应用程序选择特定的单元测试结构。MVC框架的各个环节是完全可扩展的,这使开发人员能够创建复杂的结构,满足他们的需求,开发人员在ASP.NET开发过程中应用非常广泛,这也促使我们教授MVC框架。

[1]邓勇军.基于MVC 设计模式的.NET 产品开发方法探析[J].软件导刊,2008(7):157-159.

[2]汪斌.基于ASP.NET的MVC框架的应用研究[J].电脑知识与技术,2009(7):162-163.

[3]林庆.基于ASP.NET的MVC设计模式的研究[J].计算机工程与设计,2008(1):167-169.

课程名:《ASP.NET开发技术中的MVC框架教学研究》。

周润苗(1984—),女,研究生在读,讲师,研究方向:软件工程。

猜你喜欢

设计模式开发人员控件
“1+1”作业设计模式的实践探索
三维协同设计模式下的航天项目管理实践与展望
Semtech发布LoRa Basics 以加速物联网应用
交通机电工程设计模式创新探讨
ASP.NET服务器端验证控件的使用
互动式设计模式研究
三星SMI扩展Java论坛 开发人员可用母语
Spreadsheet控件在Delphi数据库系统中的编程与应用