摘要:本文针对目前网络教育中在线学习系统的实际需求和发展状况,在分析MVC设计模式设计思想的基础上,阐述了基于MVC模式的在线学习系统的设计与实现方法。经过实践证明,采用MVC设计模式进行开发,使得该系统结构清晰,保证了数据安全,具有很好运行效果,增强了系统的可扩展性和维护性。在线学习网站是个很好的方向,原有的教育模式未来一定会通过互联网或者移动互联网的方式改造,或者成为现有教育模式的一个有机的组成部分。
1 引言
提高学生学习效率、促进学生学习方式的变革和发展其自主学习能力是现代教育必然趋势。随着Internet和WEB技术的发展及其在教育应用中的不断深入,以学习者为中心的网络在线学习模式为学生自主学习提供了发展空间,已成为现代教育的发展方向。在线学习系统突破了传统教学形式的时空界限,可充分利用优质的教学资源,提供全新的互动、反馈和交流模式,实现学习者自主学习。
2 ASP.NET MVC技术
MVC架构模式由Xerox公司在1980年由Smalltalk一80的图形用户界面库的开发者提出,把一个应用的输入、处理、输出流程按照模型(Model),视图(View)和控制器(Controller)的方式进行分离, MVC是一种程序开发设计模式,它实现了显示模块与功能模块的分离。提高了程序的可维护性、可移植性、可扩展性与可重用性,降低了程序的开发难度。是为那些需要为同样的数据提供多个视图的应用程序
而设计的,它实现了数据层与表示层的分离,特别适用于开发与用户图形界面有关的应用程序。
ASP.NET是用于生成基于Web的应用程序的内容丰富的编程框架,ASP.NET关键的两项技术是独创的WEB窗体技术和XML WEB Services,ASP.NET应用程序的运行不依赖于客户端脚本,与客户端浏览器、操作系统无关,可以使用任何基于.NET的开发语言进行开发。ASP.NET使用IIS来传送内容,以响应HTTP请求,在ASP.NET处理过程中,可以访问所有的.NET类、C#或其它语言创建的定制组件和数据库等。ASP.NET MVC是微软官方提供的以MVC模式为基础的ASP.NET Web应用程序(Web Application)框架,目前最新版本是ASP.NET MVC 4.0。MVC业务处理与显示分离,ASPX页面与CS代码彻底分离,复用和维护更好,是一种表示层的编程模型方案。
3 在线学习系统体系结构及功能划分
在线学习系统的目的是借助Internet的网络环境,建立一套功能齐全、使用方便、效率高的在线学习环境。在该环境下,学生可以学习、练习、答疑和测试。该系统能很好地配合课堂教学,成为课堂教学的延伸和提高。
根据在线学习系统的具体应用, 该系统面向的用户群分两类:教师和学生,根据使用对象的不同可将其基本功能分为:教师子系统及学生子系统,教师子系统主要针对于教师和管理员,学生子系统主要针对在线学习者。功能模块图如下:
(1)注册模块:申请唯一合法的用户名,填写姓名、密码、E-mail
等用户信息,提交资料后分别保存到教师和学生数据表中。
(2)登陆模块:面向注册的教师、管理员和学生用户,负责用户身份验证和注册,以此确定资源使用范围和权限,防止非授权用户进入系统。
(3)用户管理模块:教师和管理员管理,学生用户的管理、导入和导出。
(4)资源管理模块:教师新增、管理教学资源(如按类别发布教案、实验指导、试题和视频资源等),发布教学公告,教师可对这些资料修改和删减。
(5)模块管理模块:面向管理员,负责对模块进行管理,如模块的设置、添加、删除和更改。这一功能的实现,使得本系统可作为通用框架应用于任一学科。
(6)论坛模块:教师和学生通过论坛进行在线学习的交流,学生可以向老师和其他同学提问,教师可对提问进行网上答疑,布置作业或进行辅导,可以点对点答疑,也可以针对全体参与学习的同学。
(7)信息查询模块:学生在自主学习过程中,直接查询学习资源,将会给学生的自学习带来很大的帮助。本模块可根据学生输入的关键词,帮助学生快速定位到相关页面。
(8)测试模块:学生通过在线资源学习后,通过本模块自我测试,了解学习效果,并决定下一步的学习行为。
4 在线学习系统数据库设计
数据库是系统数据存储的服务单元,是系统主要业务数据的集
合,要求具有规范性和严格性。在建立在线学习系统数据库时,需要考虑数据的结构以及数据插入和查询的性能。在线学习系统数据库设计过程包括数据需求分析、数据概念设计、数据逻辑设计、数据库物理实现以及数据库的运行与维护。在原系统的开发中为了使系统在数据访问中有更好的灵活性,采用的是传统的ADO.NET方式,与ASP.NET一样,ASP.NET MVC框架支持任意的数据访问技术,在当前的系统开中可以选择ADO.NET Entity Framework、NHiberate、LINQ-TO-SQL等多种模型层设计方式,在此选择使用LINQ-TO-SQL。LINQ-TO-SQL随.NET3.5 Framework发布,是.NET平台连接和使用数据库比较流行的LINQ机制,具有强大的数据库处理能力。
在线学习系统数据库的物理结构如(图2): 5 基于MVC的在线学习系统实现
考虑数据库与ASP.NET MVC框架的更好结合,数据库采用SQL Server,系统在Microsoft Visual Studio 2008平台上实现, VS2008默认没有ASP.NET MVC项目模板,需到Microsoft网站下载最新的ASP.NET MVC安装程序,下载安装完后,新建项目时可以看到Visual Studio已安装模板中有ASP.NET MVC Web Application模板。
在设计模型时,使用Visual Studio 2008提供的LINQ-TO-SQL设计器,利用这个设计器,可以连接需要使用的SQL数据存储,还能够以拖放的方式使用全部数据表、视图和存储过程。使用Repository模式扩展模型层设计,解决LINQ-TO-SQL与数据库的紧密耦祸合问题,对于提高系统数据访问的扩展性和灵活性等方面有很大的作用。
控制器层负责处理来自用户的请求和输入,并将其映射到相应的类方法上,最后返回结果给客户端。它将通过模型协调数据集合与数据处理,并呈现适当的视图,视图层在MVC模式中与用户进行最直接的接触,它负责数据的呈现。view只是负责数据的呈现,所以尽量让view中不涉及业务逻辑的处理。使用ASP.NET MVC中的行为过滤器完成系统身份验证、日志记录及异常处理功能。
6 结语
本文针对目前网络教育中在线学习系统的实际需求和发展状况,在分析MVC设计模式设计思想的基础上,阐述了基于MVC模式的在线学习系统的设计与实现方法。经过实践证明,采用MVC设计模式进行开发,使得该系统结构清晰,保证了数据安全,具有很好运行效果,增强了系统的可扩展性和维护性。在线学习网站是个很好的方向,原有的教育模式未来一定会通过互联网或者移动互联网的方式改造,或者成为现有教育模式的一个有机的组成部分。但是目前而言,现有的在线学习网站从功能到实现技术上可能还需要更多的摸索。
参考文献
[1]林勤花.基于.NET的MVC+LINQ框架的应用[J].信息技术,2013,(7).
[2]龚赤兵.Visual Studio 2008中的LINQ开发技术[M].机械工业出版社,2009.
[3]周文红.基于ASP.NET MVC框架的Web应用开发 [J].计算机与现代化,2013(10).
因篇幅问题不能全部显示,请点此查看更多更全内容