基于任务驱动的在线课堂教学实践
——《程序设计基础(C语言)》在线教学案例
永利集团3044欢迎光临信息与控制工程学院 王秀鸾
一、案例背景
面对疫情,自1月底教育部提出延迟开学的相关要求,之后各个高校都在积极响应,探索以各种技术手段实现远程教育、线上教学,确保各地学生“停课不停学”。
课堂形式的转变,也许会让很多学生不适应,同时也会遇到一些从未有过的问题。我所教授的《程序设计基础(C语言)》课程的知识点多且散,学生学习难度大,如何进行线上教学才能更有效地把知识传达到学生头脑中;怎样才能抓住学生的课堂注意力,让学生主动思考问题,让学习真正发生;并把学到的知识糅合应用到编程中,掌握一定的编程技能。通过近几周探索和实践,取得了显著的成效。
二、根据各平台优势,精心选择教学平台
在学校要求开展在线辅导阶段,教研室各位老师通过试用“雨课堂”、“超星”、“智慧树”、“腾讯课堂”等众多在线教学平台,积累了很多宝贵的经验,大家从直播是否流畅、有无高效率的互动手段,是否能留下教学记录、作业的布置、评价是否快捷方便等方面讨论各个平台的优劣。在此基础上,我选择了以下平台进行在线教学:
1.视频资源选取“智慧树”平台的共享课程《程序设计基础(c)》中的微课视频,学生可以下载“知到”APP手机端观看视频,适合于学生们在线预习并标记出疑问点;
2.利用腾讯课堂的分享屏幕模式进行语音直播,学生可以不用下载APP,点开链接就可以进入课堂。还可以进行签到、举手回答问题,直播过程不卡顿,下课后可以回看,有利于学生反复学习;
3.“长江雨课堂”可以进行在线检测,实现了边学边练,及时反馈数据;
4.QQ群发布学习资料(PPT、PDF均可)、布置编程作业、在线答疑等,可以实现任课教师和学生之间“无缝衔接”,及时收集学生疑问并随时答疑,不受课堂时间限制,并可以长期保存学习资料与文件。
三、教学设计中树立一条主线,多层次任务驱动,在线测试及时反馈
确定好学习平台之后,如何让学生更有效地学习,提高教学质量就是必须要解决的一个问题。鉴于课程知识点多且相对比较零散,对于学生来说,学习起来会感觉比较枯燥,对如何编程感觉无从下手。我在C语言的教学中始终贯彻一条主线,那就是给学生树立编程求解问题(过程控制)的三步法:
➢ 数据表示
➢ 数据处理
➢ 数据输出
这三步解决了,程序自然就写出来了。任何语法知识的学习都是给这条主线“增砖添瓦”的,学习中让学生思考这个知识点对编程起什么作用?这无疑会把知识点凝聚到这条主线上,不再是一盘散沙;同时也让学生知道什么时候去用,如何去用。
根据课程内容的特点,划分知识点,有针对性地制作由浅入深的不同学习任务。把学习任务分成三个层次,分布到课前、课中、课后三个环节中。
➢ 一是概念理解任务,在雨课堂的预习ppt中发布预习任务,同时用多选题测试对概念的理解,以文字描述题为主;
➢ 二是代码分析任务,此阶段主要在课堂展开,主要解决两个任务:
l 概念精讲: 课堂上针对预习反映的问题对概念进行深入剖析;
l 概念应用:即进行代码分析。课前设计好程序段,课上分析代码含义、功能,培养学生把概念表示为代码的抽象能力;同时概括总结知识点在过程控制三步法中的作用,实现理解概念过渡到应用知识进行编程;
➢ 三是编程应用任务,侧重培养学生过程控制中的语句表达能力,让学生模仿、练习编程。
每个任务配合视频、ppt讲解、长江雨课堂测试、举手讨论、QQ群答疑等形式,让学生带着问题上课,通过在线测试手段及时发现问题,巩固学生的学习成果。
四、教学过程
(一)设计科学合理的网络预习课件,制定概念测试任务
网络预习课件一定要结合前后知识的联系,学生的理解能力、本节课的重难点的突破来设计,要给学生学习新课提供一定的知识支撑,更要有利于培养学生自学的能力,让学生在知识学习过程中能产生对编程的兴趣,激发学习的积极性。
比如:《顺序结构》这节课的主要内容是学习C语言用顺序结构的语句实现过程控制,我是这样设计预习课件的:
1. 从已会程序入手,让学生对过程控制有直观的印象
利用学生已经熟悉的求圆面积程序,配合音频进行预习导读,如图1所示。向学生说明编程求圆面积时,需要写出其求解过程,过程中的每一行代码称为一条语句。引出结论:C语言通过语句实现过程控制。顺势提出预习要解决的问题:要实现更复杂的过程控制,C语言还提供了哪些语句呢?语句的形式是什么?语句的作用又是什么?这样,既通过直观的程序引出语句的概念,又很容易能满足学生迫切需要设计复杂功能程序的心理,激发他们进一步学习的兴趣。
2.预习课件中制定在线测试题,让学生带着任务观看相应视频
要求学生利用“智慧树网站”或“知到”APP观看视频,并完成长江雨课堂预习测试,主要是对视频中所讲知识点的概念进行测试,检验学生理解是否全面、到位,找到学习盲区,如图2所示。
预习测试要求在上课前一天完成,以便教师调整上课重点,组织课上师生讨论。比如:从图3可以发现,学生对赋值表达式求值过程的理解还不准确,针对这一问题,调整知识点《赋值语句》的直播内容:
l 确定直播时重点强调其赋值的方向性和求值过程;
l 调整上课时要发布的雨课堂在线测试题,把预习中的错误题目也添加进去,准备课堂讲解完后再次测试。
(二)选择合理的课堂直播形式,完成代码分析和编程应用任务
1.对预习中发现问题进行概念精讲 长江雨课堂在线测试及时反馈
考虑到未必所有学生都足够自律,仅仅依靠预习难以明确掌握所有学生的学习状态等原因,课堂上根据教学内容不同和学生预习数据反馈可以选择两种直播形式:教师直播进行概念精讲或者先看智慧树的公开课视频再直播概念精讲。
比如《赋值语句》部分问题比较集中,适合教师直接用ppt直播进行概念精讲,之后利用雨课堂发布在线测试及时反馈。
对于语法细节比较多的内容,比如:关于输入/输出函数部分,需要学生“多磨耳朵”,可以采用第二种直播形式,教师先总结提示预习中发现的问题,再次引导学生观看公开课视频。为了提高观看视频的效果,采用长江雨课堂定时发布在线测试并限时完成的方法。具体做法:例如准备的视频资源是10分钟,同时发布一个15分钟左右的在线测试,随后要求学生根据这一任务观看视频,同时完成测试。这样可以避免学生“掉线”,较好地掌握学生的学习状态。课堂上发布的在线测试习题综合了概念理解和代码分析两方面,是预习测试习题的增强版,主要检查学生是否能解决预习中发现的问题,是否能把对概念的理解应用到代码分析中,如图4。从图中统计数据可以看出,学生对有的题目还是有疑惑,这时候再针对出错问题进行分析讲解。
2.理解概念基础上进行代码分析 把新知识点的使用汇入过程控制主线中
比如:分析代码段1:t=a;a=b;b=t和代码段2:a=b;b=a的功能,如果学生理解了赋值的方向性这个概念,就能看出代码段1是能交换变量a和b的值,而代码段2不能交换,a和b具有相同的值。
在这个讨论过程中学生可以通过举手上台回答或者聊天区回答,如图5所示。教师可以继续提出问题:如果给出程序段3:a=b;t=a; b=t,改变了语句顺序,还能不能实现交换?得出结论:编程时如果想改变变量的值就需要用赋值语句;多个赋值语句是顺序执行的,语句顺序不同,实现的功能不同。
代码分析后还要帮助学生从语法格式的学习中跳出来,站在编程的角度去总结赋值语句如何使用,让学生时刻牢记编程时的过程控制主线,明确赋值语句可以在哪个阶段使用。
l 数据表示阶段:通过使用赋值语句或变量初始化语句给变量赋初值。
l 数据处理阶段:使用赋值语句保存运算结果,实现程序功 能,如:交换变量的值等。
3.模仿练习程序 掌握编程技能
在实现了交换两个变量值的功能后,让学生模仿程序,进一步应用赋值语句编程:实现交换三个变量a,b,c的值:b的值给a,a的值给c,c的值给b。提示学生注意赋值的方向性后,留出时间,让学生在自己电脑上编程练习,要求把程序代码截图发送到QQ群展示,大家共同分析讲解。由于人数众多,未避免刷屏,只要求前三名完成的同学提交并评价打分。并对未提交程序的学生,询问有无疑难问题,确保学生都能够感受到老师的关爱与重视,如图6所示。
(三)布置线上作业、课后差异化辅导
通过qq群里的作业功能,进行课后作业的布置,课后作业分为两类:一是用思维导图进行概念梳理;二是布置编程作业,巩固所学知识。如图7所示。
QQ群作业功能可以实时观察同学完成作业的情况并红笔点评,如图8所示。对未及时完成作业的同学可以进行“一键提醒”,同时,还可以把学生作业成绩导出以便留存,如图9所示。
五、教学评价
(一)教学设计时细化知识点 教学过程中任务驱动层层递进
每个知识点的任务按三级(概念理解、代码分析、编程应用)进行划分,分配到课前、课中和课后,使学生在每个阶段都有学习的目标,通过学生思维导图作业和编程作业,可以看出学生既系统梳理了语法概念,又掌握了编程的技能,学以致用。
(二)运用多种形式教学手段提高课堂效率
直播过程中,举手上台、随机签到和雨课堂在线测试成绩判断学生在线学习情况,能使学生上课注意力高度集中,持续不断地关注课堂,有效消除线上课程上课过程中学生打瞌睡、玩手机游戏等不可控因素。上课过程中“讲练结合”的形式使学生不再被动等老师“灌输”知识,而是通过独立思考、和同学进行探究,主动消化理解知识。
(三)用数据说话,学生更自律,教师更自信
长江雨课堂平台中,不论是“课前预习”要求学生完成的测试,还是在“课中”活动中,讲解完一个知识点后发布的在线测试,都可以快速地进行数据统计,不仅方便教师实时掌握学生的学习情况,对学生也有良好的激励作用。
课程结束以后,我会把直播间和雨课堂当中学生在每一项活动以及QQ课后作业的得分情况进行统计,作为学生的平时成绩。通过截图和导出的形式,发送到班级QQ群,及时反馈给学生,让学生深刻了解自己在课堂当中的表现,总结经验与不足,为接下来的学习提供经验教训。
线上教学活动中,教师以身作则,把教学各个环节做细做精,学生也会受到感染,会认真对待每项任务,形成良好的师生互动,有效提高在线学习的效率。尽管开展网络授课无论是老师还是学生都面临着困难,但办法总比困难多,有了要把课上好的坚定决心,我们相信,所有的问题都会迎刃而解!