基于ASP.NET的Python语言网络教学系统设计与实现

2020-05-11 05:54郅芬香王留芳
科教导刊·电子版 2020年2期

郅芬香 王留芳

摘 要 Python语言已在高校计算机专业中作为一门主流的专业课进行开设,根据Python语言教学的实际需要,设计基于ASP.NET的Python语言网络教学系统已成为信息化教学的迫切需要。它不仅提供丰富的网络教学资源,而且以学生为中心,跨越时间及空间的限制,通过教师信息化教学,师生间及时沟通和答疑,提高课程的教学质量,具有较好的应用价值。

关键词 ASP.NET  Python语言 教学网站

0引言

目前对网络教学系统的研究存在着一些问题:大多数网络教学系统交互性能较差,教学设计做得越好的网络教学系统,交互性越有待提高;提问方式单一,缺少师生互动与生生互动;部分网络教学系统仅从技术实现角度出发,而忽视了教师和学生的实际需要。本文针对网络教学系统存在的一些问题,提出基于ASP.NET的Python语言网络教学系统设计与实现。该网站界面操作简单,功能齐全,资源丰富,下面从该系统的分析、设计、实现等方面介绍该网络教学系统的开发过程。

1开发过程

1.1系统分析

《Python语言程序设计》是大学计算机专业必修的一门专业入门课,创建基于ASP.NET的Python语言教学系统可以为学生课下学习提供一个开放的网络资源平台。该系统主要包含模块有:教师模块、学生模块和管理员模块。其中教师模块包含作业发布和修改,测试试题发布和修改,个人信息修改,学习资源上传等功能。学生模块包含资源信息查看,公告浏览,作业练习,模拟测试,成绩查询,在线答疑,热点讨论,学习资源下载等功能。管理员模块包含学生管理,老师管理,信息公告管理,作业管理,测试试题管理等。

1.2系统设计

本系统基于ASP.NET和ADO.NET技术设计采用B/S三层结构模式,数据库后台采用SQL Server 2008数据库。

在B/S三层结构模式中,数据库主要负责对教师信息,学生信息,学习资源及试题信息等不同数据的存储,管理和维护,该层处于最底层;中间层由Web服务器来管理,用来完成学生管理,老师管理及管理员模块的主要功能。而用户直接用的是界面层,它处于最上层,浏览器通过HTTP协议向WEB服务器发出申请,身份验证通过后,如果有数据处理的需求,Web服务器可以通过结构化查询语句或者其它方式向后台数据库发出请求,数据库会将其处理数据的相关结果回馈给Web服务器。如果没有数据处理的请求,Web服务器将申请访问的网页发送到客户端。在详细设计阶段,我们对学习资源管理和测试题管理模块做详细介绍。

Python语言学习资源主要包含Python语言学习微课视频,Python语言电子书以及Python语言程序实例代码。教学资源管理的核心模块程序类有:Python语言学习微课视频类MicoclassVideoService.cs,Python语言电子书类EbookService.cs、 Python语言程序实例代码类ProgramExample.cs以及信息资源上传与下载处理类InfoResourceProcessService.cs。

测试试题模块中,老师负责对试卷进行创建,修改,维护和更新,学生可以对测试题试卷进行選择,试卷保存及成绩查看等。测试试题模块类主要包括在线测试处理类OnlineTest.cs,维护试卷类型后台处理类KeepPaper.cs,试卷保存后台处理类ContenProcess.cs。

1.3数据库设计

基于ASP.NET的Python语言网络教学系统包含大量的数据库表信息,在这里对学生信息表及试卷信息表的表结构进行介绍。

学生信息表包括学生文本类型学号(number),文本类型姓名(name),文本类型班级(class),数字类型单元作业分数(scoreunit1, scoreunit2, scoreunit3, scoreunit4,scoreunit5,scoreunit6)及数字类型试题分数(score1,score2,score3,score4)等。

试卷信息表包括文本类型试卷编号(Paper_num),文本类型试卷名(Paper_name),数字类型总分(total_score),日期类型时间(time),数字类型单项选择题量(Singlechoice_num),数字类型多项选择题量(multiplechoice_num),数字类型判断题量(Truefalse_num),数字类型编程题量(program_num),数字类型单项选择题分数(Singlechoice_ score),数字类型多项选择题分数(multiplechoice_ score),数字类型判断题分数(Truefalse_ score),数字类型编程题分数(program_ score)等。

1.4系统实现

1.4.1数据库的连接

在ASP.NET中数据库访问主要采用ADO.NET的方式。ADO.NET即:ActiveX Data Object .NET,它包含.NET数据提供程序和DataSet对象(核心)两个主要成员。其中DataSet对象的结构和关系数据库的结构类似,可以使用各种不同的数据源,例如XML数据源,文本文件数据源以及Excel数据源等。.NET数据提供程序是数据库连接建立和操作数据的访问接口,是DataSet对象和数据源之间的纽带。.NET数据提供程序对象有:Connection、Command、DataReader和DataAdapte。

Connection对象中的ConnectionString属性提供与数据源的连接。Command对象使用户能够访问数据库操作数据的命令。DataReader对象可以从数据源中检(下转第296页)(上接第282页)索大批量不用修改的数据信息,从而提供高性能的数据流。DataAdapter对象是DataSet对象和数据源连接的纽带,该对象通过Command对象来执行相关的SQL(结构化查询语句)命令,从而可以将数据置入Dataset中,并使Dataset中修改的数据和数据源同步一致。

1.4.2功能实现

在主页面里,根据用户身份的不同,选择以管理员,学生及教师的身份输入正确的用户名和密码才能进入系统,不同的身份进入的系统功能是不同的。学生登录时,输入自己的学号、密码及验证码请求后,系统调用checkstudent方法进行学生验证,如果验证正确,跳转到student.asp,该页面显示学生能够进行的各种操作。当学生选择“试题测试”后,系统进行考试系统,学生可以选取要参加考试的某套试题,进入在线考试界面,考试进入倒计时,学生在规定的时间内完成试题并提交,可以显示各题项的得分及总分。如果想查看某一题的讲解,可以单击该试题旁的解析按钮。教师登陆时,输入自己的工号、密码及验证码请求,系统调用chkteacher方法进行教师身份验证,如果验证正确,跳转到teacher.asp,该页面显示学生能够进行的各种操作。当教师选择“作业发布”后,进入作业发布界面,教师设置作业需要提交的截止时间,作业题等信息,单击“发布”按钮即可进行发布。

1.4.3系统测试

系统测试用来解决各子系统之间的数据传递和共享问题。在实际测试中,首先要对各个模块进行测试,保证开发出来的系统能够满足实际教学的需求,符合大众用户的要求。系统測试不仅要检查系统的功能是否完备,还需要检查是否做了一些不该做的工作,需要将用户的一些非法输入及不合理数据输入考虑其中,当异常发生时,系统会对各种异常类型进行捕捉,避免系统因异常而退出。在本系统开发时,为了全面测试,在菜单项测试和数据跟踪的基础上,对系统功能进行整体测试,从而符合系统的要求。

2结束语

该系统针对网络教学存在的一些问题,将ASP.NET和SQL Server2008技术相结合,开发功能齐全基于主流Python语言的网络教学系统,非常适合Python语言的自学者和爱好者。但在实际应用中还存在这一些问题:比如缺少对学生真实学习的有效管理等,相信随着信息技术和互联网的发展,Python语言网络教学系统会越来越好,越来越完善成熟。

参考文献

[1] 宫业芹.基于ASP.NET的C语言网络教学系统网站设计与实现[J].电脑编程技巧与维护,2013(02):110-112.

[2] 杜保全.《计算机文化基础》网络教学系统设计与实现[D].济南:山东大学,2015.