开放实验平台在数据结构课程实验教学中的应用

2019-07-16 03:17任平红陈矗
电脑知识与技术 2019年14期
关键词:数据结构

任平红 陈矗

摘要:针对目前数据结构课程实验教学中存在的问题,引入了数据结构课程开放实验平台系统。该实验平台系统分为学生端和教师端。学生端提供了可视化的集成开发环境,可以实现学生信息注册、登录,开发、调试、对比、演示、提交实验项目。教师端可以实现教师信息注册和登录,管理学生信息、课程信息、课时信息,创建云模板,对学生提交的实验项目进行自动评分和汇总等。实践证明,该实验平台的使用可以明显提高学生的实践动手能力,改善数据结构课程的实验教学效果。

关键词:数据结构;开放实验平台;云模板

中图分类号:TP311.5        文献标识码:A

文章编号:1009-3044(2019)14-0112-02

1 实验教学现状

数据结构课程是计算机科学技术专业、计算机信息管理与应用专业、电子商务等专业的核心的专业基础课,在教学体系中处于非常重要的地位,是学习操作系统、编译原理、数据库原理、软件工程等课程的基础。本课程系统地介绍了数据结构的性质、在计算机内的表示、常见的操作等内容。数据结构课程涉及大量的理论知识,不仅要求学生能够熟练掌握理论知识,而且要求学生具备一定的利用算法解决实际问题的能力。

目前,在该课程的实验教学中,还存在一些问题。首先,因为课程的理论性和抽象性都很强,涉及大量的算法,学生理解起来一般比较困难[1]。其次,学生的上机实验多数是对教材上已有的算法进行验证,实验项目一般只针对单一的知识点,结合实际应用的综合案例比较少,学生难以深切感受到数据结构在程序设计中的作用。最后,缺乏必要的配套实验软件,实验项目局限于教材上的算法验证,对于学生的实验课成绩缺乏科学合理的评价考核机制。以上各个因素导致学生的实践动手能力较差,遇到复杂的问题时,往往不知道如何入手,从分析问题到建立模型的过程比较困难,学生解决实际问题的能力有待于进一步提高。

2开放实验平台的教学目标

为了进一步提高学生的实际动手能力,改善数据结构课程的实验教学效果,我校引入了数据结构课程开放实验平台。该实验平台分为教师端和学生端,由北京英真时代科技有限公司开发。教师端使用B/S模式,可以实现教师信息的注册和登录;可以管理学生信息、课程信息、课时信息;可以创建实验云模板,汇总实验成绩,管理学生考勤等。学生端使用C/S模式,可以实现学生信息的注册、登录、利用IDE环境进行实验项目的开发、调试、运行、验证、对比、演示并提交实验项目等。

计算机技术正在发生着前所未有的变化,为了适应人才培养的需求,高等院校需要培养学生的计算思维、系统思维和创新思维[2]。计算思维是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。系统思维是一种逻辑抽象能力,也可以称为整体观、全局观。创新思维指以新颖独创的方法解决问题的思维过程。为了进一步训练学生的思维能力,本实验平台还提供了计算思维训练题库EOJ。题库中包括300余道编程题目,其中有100多道ACM真题。EOJ题库覆盖了回溯法、等价转换、记憶化搜索等百余个知识点。学生可以根据EOJ题库中的云模板创建实验项目,进行相关的训练。

3 开放实验平台的实验模板

实验平台针对数据结构课程的实验教学提供了56个实验项目模板,知识点涉及了线性表、栈和队列、字符串和多维数组、树和二叉树、图、查找、排序等,基本上已涵盖了该课程的重要知识点[3]。为了降低学生完成实验的难度,实验模板已经提供了项目中的部分非核心算法的代码,例如头文件的引用、类的声明和定义、主函数中实验数据和算法的调用等。但是核心算法的代码空置,需要学生自行完成。其中部分实验项目模板如表1所示。

如果实验平台中已有的实验模板无法满足需求,教师还可以自定义云模板,并上传到服务器供学生使用。在自定义云模板时,教师既可以上传包括全部代码的完整模板用于对比、验证学生的实验项目,也可以上传不包括关键代码的模板作为学生使用的云模板。

实验项目根据难度不同分为验证类、设计类、综合类等几个类别。验证类实验项目主要来自教材上的已有算法,知识点比较单一,一般比较简单,学生可以独立完成。设计类实验项目需要结合教材上的基础知识自行设计相关算法,具有一定的难度,但是涉及的数据结构不太复杂,学生通过努力,一般也可以完成。综合类的实验项目难度最大,一般和实际工作或生活相关,需要考虑数据元素之间的逻辑关系,抽象出数据模型,设计算法,最后编写程序求解问题。此类实验项目从建立模型、设计算法到设计程序求解,难度都比较大,需要学生组建小团队或者在教师的指导下完成。

4 开放实验平台的技术特点

(1)C/S和B/S相结合的混合模式

开放实验平台的学生端采用C/S(Client/Server)模式,学生需要在本地机器上安装客户端应用程序。C/S模式交互性强、具有安全的存取模式,网络通信量低,响应速度快,适用于固定的用户群,可以更好地保证信息安全。学生端代码编写、编译、运行、调试的效率较高。实验平台的学生端界面与Microsoft的Visual Studio的IDE类似。教师端采用B/S(Browser/Server)模式,只需要使用浏览器即可访问实验平台服务器。B/S模式具有分布性强、维护方便、共享性强、维护成本低等优点。教师端可以创建实验课程、实验班级、实验模板、实验课时等[4]。

(2)使用多服务模式

开放实验平台使用了离线缓存等先进技术对服务器的性能进行了特别的优化定制、安全加固和压力测试,保证了实验平台的可用性、可靠性和可维护性,可以确保实验平台7*24小时安全运行。

(3)使用可视化技术

数据结构课程中算法的运行过程在计算机中往往是不可见的,例如单链表中各个结点的申请以及在某个位置插入一个结点,这在一定程度上会影响学生对算法的理解。本实验平台使用可视化技术将实验内容以图形化的形式展现在学生面前,学生可以直观地理解和观察程序的运行过程,有助于学生理解和学习算法。例如单链表的插入算法,学生可以直观地观察到结点指针的修改过程。另外,教师也可以利用可视化技术在课堂上进行算法的讲解和演示,使学习更加具体化和形象化。

(4)提供了丰富的信息化管理功能

实验平台对教师和学生都提供了全方位的信息化服务,可以对教学的全过程进行管理、评价和监督。教师端可以对学生的实验数据进行自动汇总、评价等管理,也可以提供按学期、课程、学时等不同粒度统计的实验数据,为提高实验教学质量提供了可靠的依据。学生端除了可以根据云模板创建实验项目之外,也可以在线撰写实验报告、提交实验报告、查看个人的出勤信息、实验项目的完成情况等。

(5)支持灵活的实验教學方式

实验平台提供了灵活的课堂演示,效果生动、深刻。此外,教师也可以不受难度和时间的限制布置开放性的实验题目,学生按要求提交实验题目后可以进行自动评价和汇总。

5 结束语

开放实验平台的教师端和学生端都提供了丰富实用的功能,平台提供了大量的实验模板,支持灵活多样的实验教学方式。平台针对每个实验项目配备了内容齐全、条理清楚的实验指导书,学生可以根据实验指导书及云模板完成实验题目。同时,平台也提供了代码智能识别以判断学生的实验是否为独立完成,例如可以判断代码是通过敲击键盘输入还是通过复制粘贴输入。另外,平台可以根据实验结果的比对给出合理的实验成绩,也可以对学生成绩进行对比、分析和汇总,可以切实减轻教师进行实验辅导的工作量。以上内容可以有效地改善实验教学的效果,锻炼学生的思维能力,提高学生的实践动手能力。该实验平台已在我校2017级计算机相关专业的学生中推广使用,教学效果评价良好。

参考文献:

[1]李晓鸿,骆嘉伟,季洁.数据结构与算法分析研究型实践教学的探索[J].实验室研究与探索,2012,31(1):121-125.

[2]司明,厍向阳,李占利, 等.突出计算思维训练的数据结构教学实践[J].实验室研究与探索, 2018, 37(5):195-201.

[3]王红梅,胡明,王涛.数据结构(C++版)[M].北京:清华大学出版社,2011.

[4]张华,张淼,张岩, 等.数据结构实验教学研究与实践[J].实验技术与管理, 2018, 35(5):218-221.

【通联编辑:王力】

猜你喜欢
数据结构
欧洲专利局OPS服务专利法律状态数据结构分析
重典型应用,明结构关系
为什么会有“数据结构”?
MOOC平台下数据结构的教学研究
数据结构课程教学网站的设计与实现
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
CDIO模式在民办院校数据结构课程实践教学中的应用
TRIZ理论在“数据结构”多媒体教学中的应用
《数据结构》教学方法创新探讨
高效学习数据结构