SCI论文(www.lunwensci.com):
摘要:针对数据结构课程教学过程中学员普遍反映的“听得懂,不会做”的问题,分析了产生这个问题的原因是在课程教学中忽略了上机实验的重要性,从调整理论课和上机实验所占的课时比例、精简知识点、采用“以学生为中心”的教学模式三个方面提出了教学改进的方法,并探索了BOPPPS教学模型在数据结构课程教学中的应用。
关键词:数据结构;BOPPPS;教学改进
本文引用格式:吴一尘,等.基于BOPPPS模型的数据结构课程教学改进[J].教育现代化,2019,6(85):150-151.
一数据结构课程教学中存在的问题
数据结构是计算机专业的一门重要的专业基础课程,是后续诸多核心专业课程的重要先导课程,例如操作系统、数据库原理与应用、算法分析与设计等。因此,学好数据结构对计算机专业的学员来说具有非常重要的作用和意义。
数据结构主要研究在非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作。通过课程的学习,一方面,使学员学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及相应的算法,并初步了解对算法的时间分析和空间分析技术。另一方面,通过对本课程算法设计和上机实践的训练,培养学员的数据抽象能力和程序设计的能力[1]。
目前,在数据结构课程的学习中,学员普遍反映的问题是“听得懂,不会做”。
数据结构课程一般开设在大二上学期,在学习这门课之前,学员接触到的与编程有关的课程只有计算机程序设计语言。因此,在学习数据结构时,学员只是具备了使用C语言进行程序设计的基本能力。
目前,在数据结构课程的教学中,理论课占的比例往往很大,以我院网络工程本科专业为例,数据结构课程的总课时是76学时,其中,理论课占了60学时,上机实验只有16学时。教员更加关注带领学员学习各类数据结构的特性和基本操作,分析在一些常见的非数值计算的程序设计问题中,如何选择合适的数据结构和算法,但对学员是否能够编程实现相应的算法,往往关注度不够,认为数据结构不是一门学习程序设计语言的课程,学员在编程上有困难,应该自行解决。这种想法导致学员普遍反映理论课上听得懂,但一做实验就不知道该怎么办,久而久之打击了学好数据结构的自信心和积极性。
二数据结构课程教学改进的方法
(一)增加上机实验课时
从数据结构课程的教学目的可以看出,这门课不仅仅要让学员学会根据具体的问题选择合适的数据结构和算法,另一方面也要通过上机实验,进一步培养学员的程序设计能力。在学习数据结构课程之前,学员仅仅具备使用C语言进行程序设计的基本能力。从课程的延续性方面来看,数据结构课程从某种程度上可以认为是一门进一步培养学员程序设计能力的课程。因此,课程的教学应该非常重视上机实验,所有对问题理论上的分析与设计都应该落地,实实在在的写出程序来。只有通过这样的锻炼,学员才能真正具备使用计算机解决非数值计算问题的能力,为后续诸多核心专业课程的学习打好理论和编程实践两个方面的基础。综上所述,笔者认为应该增加数据结构课程的上机实验课时数,着力锻炼学员的编程实践能力。
(二)精简知识点
目前,大学对四年制本科的课程学分要求普遍在150学分左右,一般16学时记1个学分。因为四年级春季学期的大部分时间用于毕业设计,一般不安排课程教学,因此,如果以7个学期,每个学期20个教学周
为输入进行计算,一名本科生每周要上17节课。而实际情况还要刨除实践教学、选修课程、考试周、法定节假日等时间,实际用来上课的时间并没有这么多。由此可以看出,目前,本科生的学习任务已经很重了。在这样的情况下,大幅增加数据结构课程的上机实验课时可行性不大,较为合适的做法是在保持课程现有总课时的情况下,调整理论课和上机实验所占的课时比例。然而,减少理论课的课时数,必须要考虑的一个问题就是能不能完成课程教学计划,能不能达成教学目标。
目前,数据结构课程的教学内容一般是按照逻辑结构来设置的,先介绍线性结构中的线性表、栈和队列、串、数组和广义表,再介绍非线性结构中的树和二叉树、图,最后介绍数据结构在查找和排序两类算法中的应用。除了查找和排序算法之外,每个部分都是按照基本概念、逻辑结构、存储结构、基本操作、具体应用的顺序展开的。但以笔者的教学经验来看,以线性结构为例,在学习完线性表之后,学员已经知道线性表是由n个数据元素构成的有限序列了。那么,在学习串时,只要指出串也是一个线性表,只是把数据元素限定为字符而已,学员就很容易明白。或者说,学员此时完全有能力自学理解串的概念,这个问题没有必要再在课堂上反复地讲。数组和广义表也是类似的情况。但在目前的课程教学计划中,这两个部分安排了1个学时的理论课教学时间。笔者认为课程教学计划追求知识点的“全”在实际教学中意义不大,可以对目前设置的知识点进行适当的精简。
(三)采用以“学生为中心”的教学模式
目前,教员在授课过程中,普遍还是使用“以教师为中心”的教学模式,以放映PPT配合理论讲授的教学方法为主,重视教的过程,关注把知识点讲全、讲细、讲透。但笔者更加认同罗宇等在文献[2]中提出的观点,“教学效果好坏的标准不是教师传授知识点的系统性,而是学生对知识的掌握程度,更是对知识运用的能力。少灌一点知识而培养学生主动学习的品格和能力,比生硬地灌输知识要好得多。”《国家中长期教育改革和发展规划纲要(2010-2020年)》中也明确指出,“注重学思结合。倡导启发式、探究式、讨论式、参与式教学,帮助学生学会学习。激发学生的好奇心,培养学生的兴趣爱好,营造独立思考、自由探索、用于创新的良好环境”。它们共同的主题都是倡导“以学生为中心”的教学模式,关注学员学习的效果和主动性。
三 BOPPPS模型在数据结构课程教学中的应用
目前,许多新的教学方法正在被积极的探索和实践,例如:BOPPPS、雨课堂、MOOC、翻转课堂、伙伴式学习等。目的都是激发学员的学习动力,将“要我学”转变为“我要学”。
其中,BOPPPS模型是近年来北美诸多知名院校所推崇的一种教学模型,该模型将教学过程划分为引入(Bridge-in)、目标(Objective)、前测(Pre-assessment)、参与式学习(Participatory learning)、后测(Post-assessment)和小结(Summary)6个部分,简称BOPPPS[3]。BOPPPS模型的核心有两点:一是强调学生全方位参与式学习而不只是听讲;二是要及时获得学生的反馈信息,以调整后续教学活动[2]。
笔者对BOPPPS模型在数据结构课程教学中的应用进行了探索。
(一)引入
引入是为了吸引学员的注意,激发学员继续学习的热情。例如,在学习图的遍历时,可以用“六度空间理论”作为引入,提问虽然我们还没有从数学上证明“六度空间理论”,但现在全球有大约40亿互联网用户,我们能不能以此来计算“六度空间理论”成立的概率有多大呢?
(二)目标
目标明确了这次课要达到的教学目标。在课堂中介绍教学目标的目的并不是走流程,而是要让学员明确的知道通过这次课的学习,我应该能够做什么,做到什么程度。例如,相较于“掌握普利姆算法”,把教学目标描述成“给你一个无向连通网,你能够利用普利姆算法画出它的最小生成树,并计算出这课最小生成树的代价”更为合适。
(三)前测
前测考查学员是否掌握了展开学习需要具备的基础知识,例如,在学习二叉树的遍历时,学员要知道什么是二叉树,可以通过提问“二叉树和度为二的有序树是一回事吗?”来进行考查。
(四)参与式学习
参与式学习强调学员在教学过程中的深度参与,可以采用多种形式展开,例如师生之间的互动、学生之间的互动、小组讨论、头脑风暴等。例如,在学习二叉树的五种性质时,可以将学员分成五组,每组组内讨论并证明其中一种性质,然后按照同一小组的成员下一次不在同一组的规则重新进行分组,让组内成员互相讲解一种性质。以笔者的经验,这种方式比小组讨论、代表发言的方式更能激发学员的积极性。在实际教学过程中,笔者发现,如果展开小组讨论,往往有“浑水摸鱼”的同学,很容易就变成只有一两个学员在讨论,小组的其他同学还是游离在课堂之外,而这种方式迫使学员必须参与进来。在参与式学习过程中,教员扮演的是引导员的角色,要求教员对课堂有较强的掌控力,一方面能够引导学员不偏离主题,另一方面也必须把控每个环节的时间,不能让某个环节无休止地进行下去。
(五)后测
后测是为了检查学员是否达到了教学目标,可以用随堂提问、小测验、课后作业等形式进行。
(六)小结
小结对这次课进行总结,也可以引出下次课的内容。
四结论
数据结构课程是计算机专业一门重要的专业基础课程,在笔者的授课过程中,发现学员普遍存在“听得懂,不会做”的问题。究其原因,笔者认为是教员在授课过程中忽略了上机实验的重要性。为了解决这个问题,笔者从三个方面提出了教学改进的方法,分别是:在保持课程现有总课时不变的情况下,增加上机实验所占的课时比例;适当精简知识点;采用“以学生为中心”的教学模式。最后,笔者探索了BOPPPS模型在数据结构课程教学中的应用。
参考文献
[1]严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,2014:3.
[2]罗宇,付绍静,李暾.从BOPPPS教学模型看课堂教学改革[J].计算机教育,2015,16:16-18.
[3]付绍静,刘丹,赵文涛,等.BOPPPS模型在信息安全教学基础课堂中的应用[J].计算机教育,2015,6:23.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网! 文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jiaoyulunwen/30732.html