崔洪振 刘梦琳 张伟 杨斌
摘 要:目前线上线下相结合的授课方式成为高等教育的必选方式之一,针对现阶段的高等教育、教学内容及教学管理,文章以计算机专业核心基础课程数据结构为例,基于线上线下教学内容及线上管理的混合式教学过程进行教学研究与探索,意在提高学生的自主学习意识,提升混合式教学管理效果,目的是培养综合素质高、编程动手能力强、职业能力突出的高水平人才;为学生走入职场、考取计算机相关的研究生进行教学设计,并根据授课效果及成绩进行有效的教学数据分析。
关键词:数据结构;混合式教学;教学过程管理;教学改革
中图分类号:G421 文献标志码:A 文章编号:1673-8454(2021)13-0088-05
数据结构是计算机专业(计算机科学与技术、物联网工程、网络工程、软件工程、信息安全等方向)大学本科学生必修的专业基础课程之一,其先导课程包括大学数学、计算机基础、离散数学、C/C++语言等课程;[1][2]其后续课程包括数据结构与算法分析、操作系统、编译原理、数据库原理、计算机网络等课程。[3]数据结构是计算机学生从非专业身份到专业身份的一个转折点之一,也是从数值计算思维到非数值计算思维[4]的转变过程。
为适应现阶段国家人才需要、培养应用型人才,在提高基础教学水平的同时,需要不断强化线上线下混合式教学。[5]在教学过程中,不断对授课过程进行反思和总结。目前存在一些关于数据结构授课方式及学生学习状态不佳的问题,部分学生对其认识、重视程度还不够深入,甚至对数据结构的学习没有兴趣。根据目前授课的状态和情况,针对这些问题做出教学问题原因剖析、改进方法与措施、进行教学效果达成分析等。
一、课程特点及内容
1.课程内容
数据结构主要是指描述计算机内部存储、组织数据的方式。[6]在研究过程中,核心的关注点是数据结构的数据元素对象,而数据元素关系以及建立在数据元素对象和关系之上的数据运算,也称为数据的基本操作。针对某一个问题,可以设计多种数据结构,但是,一个好的算法解决思路和高效的存储过程离不开对数据结构的精心选择和优化。在进行算法设计、选择与优化的过程中,需要熟悉并掌握数据结构的课程内容,其中设计的主要内容可以归为三部分。
①数据的逻辑结构,用来表示或反映数据元素与元素之间的某种逻辑上存在的关联关系,常见的逻辑关系包括一个集合内部互斥的各个元素集合逻辑结构、元素与元素之间一对一关系的线性逻辑结构、元素与元素之间一对多关系的树形逻辑结构、元素与元素之间多对多关系的图形逻辑结构。②数据的物理结构,用来表示逻辑结构在计算机内部存储空间中的存放形式或数据映像。其存储方法主要有顺序、链式、索引等。常用的映像表示方法为顺序映像和非顺序映像,顺序映像是通过计算机存储器中存储的物理位置来表示数据映像元素与元素之间的逻辑关系。而非顺序映像,则不能达到这种表示关系。③数据的存储结构,用来表示数据的逻辑结构在物理存储中的存储方式或存储结构,一种数据的逻辑结构可以根据实际情况设计不同的存储结构。[7]
2.课程特点
通过分析计算机类专业课程体系、阅读相关课程体系文献,能够得出如图1所示的计算机类课程体系结构图。[8][9]通过图1不难发现数据结构不管是在计算机领域的课程体系还是专业方向上都是关键课程,其中各个课程及专业方向都与数据结构在知识点上存在交叉。
数据结构课程是算法分析与设计、复杂计算理论等高级课程的基础。同时也是一些工程性问题、时空复杂度问题研究的重点参考依据。对数据结构的教学探讨意义重大,当然,探讨之前需要掌握目前的教学现状及存在的问题。
二、数据结构教学现状及问题分析
在数据结构授课实践过程中发现,从课程安排、授课过程到学生学习都存在一些问题,尤其是学生的情绪问题,对授课过程或学习过程产生很大影响,导致学生在学习过程中兴趣受阻,这也是导致教学效果不佳的一个主要原因。针对目前的状况,笔者分析总结了如下几个方面的原因。
1.课程授课目标及学习目标不明确
数据结构是一门比较抽象的课程,教学在课前导入阶段,学生在大脑中搜索不到一个可以理解的案例来映射数据结构课程的知识点,或者学生不能从一个宏观的角度来感知其学习的内容,会导致学习目标不明確。在授课过程中,数据结构的“抽象”一直是一个迷惑学生的关键点,也是导致课程授课目标不明确的一个核心点。在调查中发现,79.3%的学生更喜欢教师上课采用案例讲解,47.6%的学生建议教师增加授课知识点的案例讲解。适当增加教学案例,更有助于学生的学习和理解,也是明确授课目标的关键策略之一。授课后,学生不能及时进行复习、知识的回顾与总结,并且遇到疑难问题,懒于沟通交流,懒于自主查阅学习。这也是导致学生不能独立思考总结、反思自己的学习目标的一个重要原因。当然,反思对于教师来说也是明确教学目标的一个关键环节。
2.理论和实践之间存在问题
数据结构课程要求学生具有较高的抽象思维能力,针对具体问题具有较高的逻辑思维能力的同时,需要学生能够利用编程工具等进行问题的解决。但是,在实际的教学过程中,理论教学和实践教学出现了一定的偏差。其问题的暴露点在于:①高校考研知识的侧重点在于理论基础知识的掌握;②数据结构本身知识点较多,在一定的课程学时授课过程中,内容安排量较多,且数据结构本身对编程能力要求偏高一些,实验实践环节课时安排不足;③学生编程能力有限,且学生需要花费大量时间对概念等理论知识进行消化吸收。因此,针对上述暴露点,不难得出,学生在理解概念和基础逻辑之上,将数据抽象化之后,再转换为实际代码,是比较困难的。这一问题也是导致学生失去学习该课程兴趣的关键原因之一。
3.教学方式与学习方式上存在问题
分析当前的教学方式和学习方式,不难发现如下几点现状:①部分高校会将数据结构内容安排在大一环节进行授课。大部分学生在初高中阶段的学习过程中已经习惯了“被安排”的学习习惯。习惯了别人的督促和监督,但是对于高校的授课过程和学习过程,更多的是强调自主学习意识,缺少了相应的督促和监督,学生在学习形式或学习方式上发生了变化。②教学方式多采用灌输式的教学方式。由于数据结构课程具有抽象、知识点多且深奥、计算应用场景多且复杂等特点,这样授课过程中,大部分教师为了进度或其他原因会采用“填鸭式”或“灌输式”的教学方式,导致授课过程中容易忽略学生的感受和接受的程度,也会导致与学生的互动减少,甚至没有。③部分学生在学习上,会因为部分知识点掌握得不扎实,导致对后面的学习内容失去兴趣。所以关注教学过程中的教学方法和学生的学习方式,也是实现数据结构教改中的一个重要环节。
4.数据结构考核方式存在问题
传统的教学过程,数据结构的考核也会有一些问题需要讨论研究和探索。比如,考核比例划分问题、期末考试“划重点”问题、期末“突击预习式复习”问题。首先,大部分高校会把数据结构考核成绩分成两部分,其中一部分用于学习过程,包括作业、实验实践、平时测验、考勤等,其比例会占到30%左右,剩余的70%是期末成绩。应该提高过程教学成绩的比例、提高实验实践比例,降低期末成绩的教学考核比例。其次是“划重点”问题,任课教师要严格要求学生深入复习,同时在教学过程要明确提出没有“重点”、没有“考点”、没有所谓的“范围”,根据教学大纲内容,让学生自主复习、自主发现或探索考试的“重点”,而不是依赖于授课教师的“划重点”。最后是考核之前的复习阶段,部分学生进入大学后学习压力递减,大部分精力不能用于课程学习,导致平时上课期间效率低、学习状态欠佳,对授课内容一知半解,甚至听不懂,这就导致在期末考试前出现突击的现象,学生对平时授课知识非常模糊,甚至不知道教师讲没讲过,在期末复习过程中就会出现“预习式复习”状态。
三、数据结构混合式教学改革的探索
1.教学目标与学习目标的改革探索
计算机类的课程,第一堂课至关重要,要让学生明白这门课程的学习目标、理解教师的教学目标,同时教师能够启发式引导学生在大脑里形成一种潜在的思维、通过自己接触的知识或场景来加深对这门课程的理解。
因此,从教学目标来看,上好第一堂课非常重要,第一堂课的案例枚举至关重要,要让学生对数据结构的知识点产生好奇心,而不是对数据结构的知识点产生迷茫。在强调课程重要性的基础上,帮助每个学生明确各自的学习目标,告诉学生要自主、有信心,能够依靠自己借助教师来学好这门课程。图2是数据结构混合式教学改革构架。
2.教学过程中教学管理的探索
在数据结构授课过程中,经常出现的问题就是学生人员管理问题。针对该问题,笔者结合“分而治之”提出了小组学习制度。
部分专业或班级人数太多,或者任课教师所带班级较多,导致精力有限,不能照顾到所有学生,这就需要一种 “分而治之”的管理思想。在授课过程中,以班委牵头或者其他成员担任组长,形成数据结构学习小组,小组内所有学生都根据自己的学习情况制定学习目标、进行学习任务规划,并严格执行,组长做好监督工作,定时向任课教师反馈小组学习状态和学习情况。这样便于关注到需要关注的学生,同时,做好调查反馈,可以采用调查问卷、面对面沟通等方式,对组长进行评价或考核。
教学过程中,加强信息化教学,每个学习小组建立一个学习小组群,这样便于理解和掌握学生的学习动态,同时可以针对不同的学习小组群分享不同的学习知识点和其他学习资料。平时考勤过程,严格落实到小组内,一人缺勤迟到,小组整体受影响;努力提高小组内的作业质量、学习笔记的质量、平时测验的成绩,进行小组间的对比考评。让小组内的每个成员都参与到学习过程中。
针对个别情况比较特殊的学生,任课教师可以进行一对一的教学指导和问题处理。尽最大可能保证授课过程及教学管理中“一个都不能少”。
3.线下、线上教学内容及线上管理的混合式教学改革与探索
目前线上线下混合式教学火热。部分高校相关课程要求学生课后自学慕课,查看相关课程视频。那么看什么样的视频、怎样看线上的视频、看后是否达到预期效果,值得深思。现阶段,在线教育过程中,部分教师要求学生学习录播视频,然后在线答疑。这也是一种不错的教学方法,但是,这种方式还是存在不少问题的。
(1)在线教育教学形式探索。在数据结构的授课过程中,不建议学生查看录播视频、教师在线答疑。而是采用线上直播、录播视频辅助,长期支持在线答疑来完成数据结构的授课过程。数据结构直播授课,能够带动学生的学习激情,同时在授课过程中,连麦提问、与学生互动也是实现对学生学习监督的过程,同时允许学生随时发问提问,这样和真实上课效果相当。数据结构教研组要深入讨论在线MOOC视频的教学效果,指定相关的在线录播视频,供学生参考使用,促进学生在疑难问题上能够有资料可参考,其中,数据结构可参考浙江大学陈越老师所授的“数据结构国家精品在线课程”。
(2)线下教学与线上管理结合。部分教师或学生认为,不能面对面授课就没有线下课程教学内容,这种看法是错误的。在数据结构授课过程中,线上线下教育包含两方面:①课程线下预习和复习的安排。在授课前要求学生要有预习问题、预习笔记,在课后要有课堂总结笔记,在练习或测验中要有错题笔记。这样可以促进学生线下课堂内容的完成,真实完成预习内容、复习内容,使练习有依据。②线上做好管理和验收。在数据结构授课过程中,课上随机抽取学生进行预习和复习检查,检查其线下课程内容的学习效果。同时实行小组责任制,以组长牵头进行预习笔记、复习笔记、错题笔记“三大笔记”的检查与评价;小组内,进行上述学习内容的互评检查,确保每一位学生都不能被忽略,都能完成好线下课程学习内容。
(3)加强混合式的实验实践教学环节。在数据结构的实验实践教学中,主要以学生课下学习任务自主完成为导向、课上检查为辅助。在上一次实验课中,部署好下一次实验课的内容,并进行关键点的指导剖析、部分代码逻辑的可视化分析与讲解,让学生课下完成对应的实验习题练习,能够独立完成課程实验报告,并在实验报告的实验结果上截图留痕,截图时,图片上标注好学生自己的姓名和当前做实验的时间。该阶段的完成,主要依赖学生的线下学习时间,如果学生C/C++语言基础牢固,课堂上就可以完成部分实验内容。下次实验课,让学生反馈或讲解部分实验内容,完成线下实验核查过程。在该阶段,授课教师需要仔细批阅每一个学生的课程实验报告,随时能够进行线上答疑。混合式的实验实践教学管理是促进学生能否有效掌握实验内容的关键点,授课教师起辅导、指导、督促作用。
(4)增加过程学习考核。数据结构的考核方式一直受到学生和教师的关注,所以,课程考核应该从学生的学习过程入手,加强学生对上述学习规范要求的理解,从内心认识到工夫在平时,而不是“预习式的复习”过关考核。将考核成绩计分方式分成三部分:平时成绩提高到30%,实验成绩调整为30%,期末成绩为40%,同时上述三部分必须同时及格达标,否则任意一部分没有达标,则整体成绩不达标。平时成绩包括线上线下课堂出勤及表现、线下预习情况及笔记、线下复习情况及笔记、线下作业完成情况、线下练习及错题笔记、平时测验等。提高平时成绩主要是增加学生对过程考核的重视程度,由“突击式”的期末学习方式变成“过程式”的学习方式。
(5)对于混合式教学的各个环节,学生要有问题反馈的入口。在APP学习通这一学习软件上,可以采用调查问卷进行匿名问题的暴露,也可以在学习社区进行自主讨论或相互答疑。答疑时间可以随时随地自由交流发问,也可以要求学生统一在每周的固定时间段进行学习交流。探索混合式教学就要实现:教师线上线下讲好每一堂课,学生用好线下学习时间,充分利用好线上的管理方法对线下学习进行管理和跟进,保证线上线下教学及线上管理的混合式教学的质量不下降。
4.混合式教学改革研究成果
通过本次改革施教和先前同专业学生进行总成绩、期末考试成绩、平时成绩不同维度的比较分析,其结果明显。第一,同专业3个年级进行对比如表1所示。
第二,同专业两届学生不同维度的考核成绩,混合式教学改革前成绩分布和改革后成绩分布对比图,总成绩、卷面成绩、平时成绩,改革前和改革后如图3、图4所示。
通过对同专业学生历年的成绩进行分析对比,发现基于数据结构教学内容的混合式教学过程可以明显提高学生的考试通过率,并且学生整体成绩有较明显的提高。尤其是期末卷面成绩,中等以上成绩的学生已由原来的39.58%占比提高到68%,学生整体水平明显提高。同时,经过初步统计混合式教学改革后该专业学生在数据结构课堂上以任课教师为指导,班级50人参与专业类比赛58人次/学期。
四、结语
加强教学信息反馈,多做教学反思总结;加强过程教学管理,工夫用在平时;加强数据结构教学内容建设,引导学生强化自主学习意识;积极探索课程教改,提高课程资源质量,创建优质线上线下混合式课程内容过程教學。数据结构作为高校计算机课程的核心基础课,其教学质量、教学效果、学生掌握情况,一直是授课教师及有关专家思考的问题。本文主要是针对这一问题,结合目前大环境下的在线授课情况及教学管理,提供了一种对数据结构课程内容进行线上线下混合式教学及线上管理的教学方式。提高教学质量的同时,加强对学生的自主学习意识和自律学习意识的引导。笔者认为数据结构教学改革一直处于进行时,持续不断提高教学质量,是每一位教师的责任。
参考文献:
[1]李照奎,吴杰宏,王岩,赵亮,范纯龙,刘芳.工程教育专业认证背景下数据结构课程改革探索与分析[J].计算机教育,2019(8):110-113.
[2]高艳霞,田继鹏,王春霞.“数据结构”课程教学改革初探[J].纺织服装教育,2019,34(5):447-449.
[3]程辉,王正山,李元金.应用型本科院校数据结构课程教学改革实践[J].滁州学院学报,2019,21(5):123-125.
[4]王嘉.信息与计算科学专业数据结构课程的教学探索[J].计算机教育,2019(1):68-71.
[5]戴成秋.数据结构课程混合式教学实践与评估[J].计算机教育,2019(1):80-83.
[6]史志才,施一萍,张辉.“算法与数据结构”课程的改革与建设[J].福建电脑,2016,32(9):62-63.
[7]严蔚敏,吴伟民.数据结构[M].北京:清华大学出版社,1997:5-7.
[8]付向艳.《数据结构》在计算机专业中的地位[J].教育教学论坛,2011(21):160-161.
[9]中国大学MOOC国家精品课程.数据结构[EB/OL].[2019-01].https://www.icourse163.org/course/ PAEU-10-01660013.
(编辑:王天鹏)