APP下载

基于《数据结构》实验的翻转课堂教学研究

2022-01-01毛雪松

科教导刊·电子版 2021年19期
关键词:数据结构代码教学方式

熊 莹 毛雪松

([1]武汉科技大学计算机科学与技术学院 湖北·武汉 430065;[2]湖北省智能信息处理与实时工业系统湖北省重点实验室 湖北·武汉 430065;[3]武汉科技大学信息科学与工程学院 湖北·武汉 430081)

0 引言

新兴技术给教育工作者带来了许多便利的教学新工具,如何利用这些教学工具来改进学生的学习过程、提高教学效率已成为重要的研究课题。

教育工作者利用技术进步创建新的教学模式,其中的翻转课堂是近年来非常流行的模式之一。根据这一模型,学生课后预先学习教师布置的学习资料,而在课堂上通过针对学习资料提问、解答问题以及参与讨论的方式学习。围绕这一教学方法的很多研究与实践表明,该方法能够有效增强学生的学习主动性、改善教学效果,然而大部分文献讨论理论课堂的翻转教学,针对工科学生实验教学的翻转课堂设计以及评价方面的研究偏少。

《数据结构》是计算机科学与技术学院大学本科学生的重要基础课程,按照传统教学方式,学生在课堂上学习完理论知识后,参加实验老师指导的编程实验课。学生将课堂的主要时间用于完成教师布置的实习课题,教师在课后阅读大量的学生实验报告,却很少有时间与学生互动完成实验教学。由于学生存在对知识掌握程度的差异,这种教学方式仅对个别优秀学生有效,大部分学生在课堂上难以完成编程任务,很多学生为了应付完成作业,被迫相互抄袭。

随着社会的发展,大部分学生购买了个人笔记本电脑,这一现实情况为《数据结构》的实验教学采用翻转课堂教学方式提供了可行的基础条件。因此,在实验教学中,我们采取将编程任务预先布置给学生,将课堂时间主要用于讨论编程中遇到的问题。通过这种方式,学生有足够的时间思考问题,提高编程中的逻辑能力,教师也有足够的时间与学生互动,帮助学生解决学习中遇到的问题,提高自身的教学能力。

1 《数据结构》课程的翻转课堂设计

《数据结构》课程的理论性很强,如何将理论课堂学习到的知识以代码的形式在计算机上运行通过,是检验学生理论知识的掌握程度和将理论知识转化为实际能力的重要指标。实验题目逻辑性强、编写代码枯燥,按照传统教学方式、学生完成理论课堂学习后,在实验课堂上完成编码实践。由于很难在指定的时间内完成学习计划,部分学生敷衍了事。为提高学生学习兴趣,教师组将《数据结构》的实验教学选定为翻转课堂教学改革的先导课程,针对不同章节设计了完整的翻转课堂教学方案。充分利用大学生的个人笔记本电脑,将实践课题与要求按教学计划预先分发给学生。例如,在“结合二叉树的二叉排序树设计”的实验教学中,设计的课题为:用C语言创建一棵采用链式存储结构的二叉排序树,写一个算法,删除某一个结点,要求删除该结点后,此树仍是一棵二叉排序树,并且高度不增长。要求学生复习二叉排序树的相关理论课程知识,在一周内完成代码的编写。

代码编写完成后,要求在指定时间内将代码交给教师审阅。课堂上教师根据学生的完成情况,采取灵活的翻转课堂方式。翻转课堂有多种形式,具体可包括标准翻转课堂、部分翻转课堂、讨论式翻转课堂、基于演示的翻转课堂、基于分组的翻转课堂、角色翻转课堂等。在课程设计方面,主要采取标准翻转课堂与分组翻转课堂两种形式,即采取学生课后完成作业,对部分内容教师课堂上分析总结学生作业完成中存在问题的方式,对其它内容在课堂上实行分组讨论、小组总结的方式。

2 翻转课堂在学生技能培养中的效果

标准翻转主要针对课程前期相对简单的内容,大部分学生完成情况较好的情况下,由教师在课堂上针对学生课后编程中的优秀代码抽取出来分享,对部分学生在编码中出现的问题进行分析总结,另外还会针对完成的实践课题做适当变形引导学生对问题做深入的思考。

在课程后期,进入树的理论学习后,理论知识抽象,学生学习难度较大,实验教学上开始实施分组教学。实施分组翻转课堂教学一周前,教师根据实验室电脑位置将学生按每组6~8人分组,确定每一小组的任务,然后向学生讲解实验过程中需要注意的重点和难点。每一小组通过内部选举确定本小组的组长,由组长在民主讨论的基础上确定每一成员在课题中须完成的任务。各小组须在课后学习预先分发的实验程序设计手册,可自行编写调试相应代码。在实验课堂教学中,小组成员一起完成代码调制,调试程序的时间确定为1学时。程序调试完成后,再分配1学时用于成果展示、发表报告和教师对学生工作总结。对于未能按任务要求完成程序调试的小组,教师帮助学生一起寻找问题、解决问题,督促学生坚持完成任务,不能中途而废。

积极推行翻转课堂实验教学后,教师根据学生编程代码验收通过率总结翻转课堂的教学效果,结果表明,学生编写程序代码的可读性、执行效率、正确性等方面均明显优于过去接受传统实验教学方式。前一学年在同一年级不同班级之间的实验结果表明,对于实验“一元多项式相加”,参加翻转课堂学生的程序代码验收一次通过率平均达到88%,按传统教学方式编写程序代码的学生代码验收一次通过率平均仅为25%。对于实验“结合二叉树的二叉排序树设计”,参加翻转课堂学生的程序代码验收一次通过率平均达到78.3%,按传统教学方式编写程序代码的学生代码验收一次通过率平均仅为6.6%。总结翻转教学实验教学效果,实际代码一次验收通过率前一年大为83.3%,次年加大难点讲解和引入组内评分机制后达到了94.5%。对比传统教学方式,可以看出翻转课堂由于能够更加激发学生的学习主动性,其教学效果明显优于传统的教学方式。在今后的教学活动中,教师还将积极改革教学方法,增加学习的趣味性、挑战性,调动学生的学习主观能动性。

3 翻转课堂在学生创新能力培养中的作用

对学生创新性能力的训练是21世纪教育的最基本要求,在知识经济和全球化的浪潮中,创新型人才的培养已成为各级教育的重点目标。从教育者方面看,在教师评价、聘任、评分等指标中都包含有对学生创造力培养的指标。从被教育者方面看,各级学校的入学考试以及大学生毕业后的就业活动中,创造性被作为一种选拔标准。显然,创造性已成为未来教育发展的趋势。

《数据结构》实验课程具有三个显著特征:首先,它具有很强的专业性;其次,它具有很强的实践性;第三,就是学科要求具有很强的创新性。传统教学中,一些常见问题无法激发学生的学习欲求,例如教学材料与实际需求的脱节、教学模式和理念陈旧、过重强调理论和细节等。

翻转课堂是改革传统教学方式,训练学生创新性思维的一种尝试。教师是翻转课堂的设计者与主导者,但不是课堂活动的中心。教学活动将学生作为中心,以学生自主学习达到训练独立分析、探索、实践、提问和创新的目的。教师在设计课堂活动任务时,更多考虑学生通过完成群体任务实现合作学习与批判思维训练的内容。

为在教学活动中训练学生的创新能力,在给学生分发的课前学习资料内,设置问题并启发式引导;在成果展示、发表报告阶段,各小组共同参与、共同思考成果展示小组的程序编写解决方法以及存在的问题、改进方案。从课堂教学氛围观察,大部分学生都能集中到课堂教学活动中,且对教学问题表现出兴趣。根据验收阅读各小组编写的程序,程序编写格式明显带有思考的内容,例如数组下标的范围、二叉树中指针的运用,不同于传统教学模式下学生所交程序千篇一律、相互抄袭。

4 积极改进翻转课堂的实践途径

相比于传统的教学方式,翻转教学虽然在数据结构的实验教学中获得成功,但翻转教学方式不局限于当前的分组教学,形式可以灵活多样,其围绕的宗旨在于创建主动学习环境。分组教学存在的明显缺陷在于对学习主动性差的学生不能起到很好的督促作用,存在部分小组成员在验收中搭便车、滥竽充数的现象,这些状况需要在今后的教学实践中通过增加翻转课堂的教学手段的方式得到改进。

除了分组的翻转课堂方式以外,还存在很多形式,但每种形式在实践中都会存在不足。第一个问题是分发给学生学习的资料质量问题。如果一次分发的资料过长,或者一份资料中包含多个目标,学生在自主学习过程中就会失去学习兴趣。另外,如果有学生课前并没有认真学习教师分配的学习资料,那么教师将很难按照制定的课程计划完成教学。最后,每周准备教学资料,特别是视频资料,对教师的工作提出非常高的要求,教师所分发的学习资料可能对学生没有吸引力。虽然翻转课堂是学生的一种有效学习方法,但老师不能确保每个学生在上课前都学习了所分发的资料、观看了教学视频。学生不主动学习,其中一个原因可能与分发的资料质量有关,任何学生不参加课程准备的倾向都可能对他们的学习成绩产生负面影响。

很显然,翻转课堂教学是一种需要技术支撑的教学方式,在每一种翻转学习方法中,都必须注入教与学的艺术。互联网技术正在重塑教育,有大量在线开放平台提供教学课程以及学习管理系统,需要教育工作者仔细甄别使用。目前,我们的翻转学习还仅限于翻转课堂,但随着技术的发展,很多先进的手段可以集成到教育中,这些技术正在逐渐成为现代教育的一种社会环境,教育工作者应主动运用先进技术改革教学方法。综上所述,翻转教学是一种不同程度集成了现代技术的教育手段,在教育实践中,需要教育工作者以提高学生的学习体验为目的,不断推陈出新,达到提高学生学习能力和提升自身教学能力的双赢结果。

猜你喜欢

数据结构代码教学方式
高校钢琴教学方式拓展的思考与实践
创世代码
创世代码
创世代码
创世代码
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
探索不同教学方式 提高课堂教学效果
TRIZ理论在“数据结构”多媒体教学中的应用
《数据结构》教学方法创新探讨