第 10 期
2020 年 10 月 10 日
计算机教育
Computer Education
中图分类号:G642
24
Python 语言程序设计在线多元混合教学
刘欣欣1,朱延钊2,徐红云1
(1.华南理工大学 计算机科学与工程学院,广东 广州 510006;
2.华南理工大学 软件学院,广东 广州 510006)
摘 要:针对疫情期间的线上教学要求,提出结合异步SPOC、在线直播、辅助教学平台开展Python 语言
程序设计的在线多元混合教学,结合翻转课堂和同伴教学介绍在线教学的实施过程,最后说明教学实践效果并进行分析。
关键词:异步SPOC;
Python 语言程序设计;多元混合教学;翻转课堂;同伴教学 0 引 言
Python 语言程序设计是面向高等院校大学一年级非计算机专业学生开设的一门计算机公共基础课,该课程通过Python 语言介绍程序设计的基本思想,通过Python 丰富和强大的第三方库帮助学生理解和运用计算生态,培养学生的计算思维能力以及利用计算机解决实际问题的能力,为今后从事各个领域的研究和实践提供方法和工具。通过异步SPOC ,结合自主开发的Python 语言程序设计辅助教学平台,同时借助腾讯课堂进行翻转课堂直播,利用QQ 群开展互动讨论,开展Python 语言程序设计课程的在线多元混合教学实践。为了达到和课堂教学一样甚至更好的教学效果,应对教学安排进行适当调整,并引入同伴教学增强自主学习和互动。在教学实践过程中,挖掘有助于提升传统教学效果的线上元素,为课程改革融入线上元素提供新的思路。
1 在线教学的实施
在线教学引进中国大学MOOC 平台上由北京理工大学开设的Python 语言程序设计课程[1-2],该课程
是国家精品在线开放课程,已经在中国大学MOOC 平台开课11次,累计学习者超过173万人。为了更好地适应校内教学,方便掌握本校
基金项目:教育部产学合作协同育人项目(201802141006)
;华南理工大学教研教改项目(Y1190801,Y1180781)。第一作者简介:刘欣欣,女,副教授,研究方向为信息安全、软件自动化、智能教育技术,csliuxx@。
文章编号:1672-5913(2020)10-0024-04
学生的学习情况,应对该课程进行异步SPOC ,按校内教学进度发布课程内容,设定评分方式。MOOC 的引入有利于为学生提供个性化的学习,学生编程基础不同,可以根据自身知识水平,有选择地对MOOC 视频进行学习。
在线教学活动的开展,借助自主开发的Python 语言程序设计辅助教学平台。该平台具有课前预习、课堂小测、课后作业、作业互评、期末考试等功能,涵盖对学生课前、课中和课后全部学习过程的记录和评价,并形成良好的教学反馈。
在线教学开始前,教师组织并建立QQ 群,方便和学生的交流沟通;完成课程SPOC 的建设以及学生的导入和分组管理;完成辅助教学平台的学生导入等工作。学生加入课程QQ 群,完成SPOC 平台的
注册登录,辅助教学平台的登录以及Python 语言编程开发环境的安装配置。
1.1 教学安排的调整
在教学实施过程中,对原课程的教学安排进行适当调整,见表1。
表1 教学安排的调整
学时
原教学安排
在线教学安排
总学时4040课堂讲授学时3224实验学时
8
16
第 10 期25
专题策划——线上教学(六)
Python语言程序设计课程原教学安排为总学
时40学时,其中课堂讲授32学时,实验8学时。
在线教学将MOOC学习和翻转课堂相结合,因
此课堂讲授学时调整为24学时,实验学时调整
为16学时,另外MOOC学习学时约为18学时。
在总学时不变的情况下,增加实验学时能开展更
多的编程实践训练,对Python语言程序设计这
门实践性较强的课程来说能更好地培养学生的动
手能力和应用计算思维解决问题的能力。课程的
教学活动分12周完成,每周安排约1.5学时的
MOOC视频学习任务,课堂授课2学时,从第5
周开始开展实验教学,每周2学时。
1.2 在线直播翻转课堂教学
在线教学的课堂授课采用翻转课堂的教学方
法,每周课前通过QQ群公告和SPOC平台公告
栏发布本周的学习任务,包括MOOC视频的观看、辅助教学平台上的课前预习题等。学生在学习过程中遇到问题,可以在QQ群提问,也可以在SPOC平台的讨论区发起讨论。课堂上主要选取课程的重点和难点内容,围绕知识的理解和运用开展教学。
课堂授课采用腾讯课堂的直播实现,在课表指定的上课时间邀请学生进入腾讯课堂,主要进行屏幕分享,方便在PPT播放和编程演示之间进行切换。腾讯课堂极速版直播较稳定,能生成课程回放;提供考勤功能,能生成到课学生列表,统计听课总时长;画板功能方便教师进行屏幕写画,还有举手功能等。
在线翻转课堂的教学组织主要包括课堂小测、重点解析、课堂练习、知识应用与拓展等,如图1所示,以教学第3周基本数据类型的教学为例进行说明。
课前学生学习MOOC第3周的知识点Python语言的基本数据类型,包括数字类型及操作、字符串类型及操作、实例天天向上的力量、实例文本进度条以及time库的使用。为了督促学生准时到课不迟到,每次课堂教学开始前先在辅助教学平台进行10 min的课前小测,检查学生本周MOOC视频的学习情况。课堂小测能即时计算分数并统计每道题的正确率,方便教师了解教学班的知识掌握情况。通过课前小测,教师发现在本周的知识点中,字符串切片、字符串的格式化表示、字符串的比较操作、浮点数的不确定尾数等问题错误率较高,应针对错误率较高的题目进行解析,约5 min。
随后教师对本周知识的重点和难点进行补充讲解,约15 min。在第3周的教学知识点中,重点讲解:①浮点数的不确定尾数问题以及解决此问题的round函数和利用math库实现浮点数的精确求和;②字符串的常用操作join,strip,center,replace,count,lower,upper和split;
③字符串的比较和字符串的格式化表示。针对这些重点和难点,在辅助教学平台上开展程序填空题和程序分析题的练习,学生在QQ群展开讨论,约15 min。
经过1节课的知识巩固和练习,在第2节课的开始再进行一次10 min的课中小测,选取的题目难度比课前小测偏高。经过在线教学实践发现,课中小测非常有必要,一方面学生在线学习由于缺少课堂氛围容易产生松懈心理,或被其他事情干扰而分心,课中小测作为课堂的刺激机制,能抓住学生注意力,防止学生中途离开课堂;另一方面,经过第1节课的学习,学生也期待进一步检测自己的掌握情况,如果在课中小测中成绩有所提高,也会带来学习的成就感和满足感。
教师针对课中小测中普遍存在的问题进行解析后,就可以开始针对本周知识点的综合编程练习和讨论,为了适应不同编程基础的学生,满图1 在线翻转课堂的教学组织
䄪ݹᄻ≷
喋 ܲ䧋喌
䄪ݹᄻ≷
㼏䃞㼏
喋 ܲ䧋喌
䛹◥䯪◥㼏
喋 ܲ䧋喌
⼷Ꮋ⾦ȟ
ܲ䷄㏯Ό
喋 ܲ䧋喌
䄪͙ᄻ≷
喋 ܲ䧋喌
䄪͙ᄻ≷
㼏䃞㼏
喋 ܲ䧋喌
㑂⼷㏯Όࣶ䃔䃦
喋 ܲ䧋喌
2020
26
计算机教育
Computer Education
足教学多样化的需要,从辅助教学平台题库中选取不同难度等级的题目,学生可以选择完成并将问题和结果在QQ 群中分享讨论。教学中发现对教师提出的一个问题,学生往往能设计出多种不同的解决方案,通过分享和讨论,能激发学习热情,拓宽问题解决思路并加深对知识的理解。
2 在线教学中的同伴教学
作为同伴教学的先驱,哈佛大学Eric Mazur 教授指出,与向教授请教相比,学生似乎更乐于从同伴那里获得指导[3]。同伴教学能引导学生参与教学过程,构建一种学生自主学习、合作学习、生生互动、师生互动的创新教学模式。同传统课堂教学相比,在线教学更需要同伴教学营造的互学互教、相互鼓励的学习氛围。将同伴教学的思想融入Python 语言程序设计的在线教学中,体现在作业互评、课堂讨论和实验教学3个方面。
在作业互评方面,每周学生在辅助教学平台完成程序设计作业后,由系统随机指定进行作业的互评,多数学生能认真对待互评,给出评语甚至改进的建议,并对不确定的问题在QQ 群中发起讨论。图2所示为一份作业的3个评价结果。通过互评能提升思考能力,在批改作业时,通过发现问题从而加深对知识的理解。互评也是一个互相学习的过程,解决一个问题的方案有很多种,通过互评能从其他人不同的实现方案中获得启发,提升自身的编程能力[4]。
在实验教学方面,以往在机房上机实验,学生有问题时助教和老师当面指导。由于公共课一个教学班
人数较多,助教和老师很难及时响应每位学生。在线教学通过QQ 群开展实验指导,一些共性的问题不再需要教师一个个解决,学生在群里看到类似的问题,多数能自行解决。另外,编程能力较好的学生会主动帮助同学发现程序中的问题,大大缓解助教和老师不足的问题。
3 在线教学效果的分析
为了对教学效果进行及时准确的评估,结合在线教学的特点,可以采用多元的考核评价机制,将形成性评价和终结性评价相结合。课程利用辅助教学平台收集详细的学习记录,包括课前预习、课堂小测、课后作业、实验、互评记录等;同时,利用SPOC 平台收集学生视频学习记录,这些形成性评价评估学习过程使教师和学生都能及时获得反馈信息。教师了解教学班的知识掌握情况,及时调整授课内容;学生对自己的学习过程进行反思,有利于培养学习的自主性,激发学习动力。
终结性评价评估学习的结果,以期末考试成绩评定学生对Python 语言基础知识和程序设计基本方法的掌握和应用情况。期末考试采用上机考试,占总成绩的50%。实验考查学生运用所学知识编程解决实际问题的能力,占总成绩的20%。平时成绩占总成绩的30%,包括MOOC
视频的观看、作业和课堂表现。只有期末考试、实验、平时成绩3部分分别都达到及格,这门课程才能最终被认定为合格。
结合前4周的教学数
据,从MOOC 视频的观看、课堂出勤率、课堂互动、小测、作业互评等方面考查在线教学的实施效果。学生每周需完成指定MOOC 视频的观看,在教学前4周,视频学习完成率为100%的学生占88.6%,完成率低于60%的学生占6.8%
,说明绝大部分学生有学习的主动性和自觉性。在教学前4周,每周课堂直播时长约100 min ,腾讯课堂统计的课堂出勤率都为100%,人均听课
图2 作业互评的分数和评语
在课堂讨论方面,学生在QQ 群中能积极响应教师的提问,对教师讲解有疑问的地方也会主动提问,甚至引起大家的热烈讨论。和传统的课堂教学相比,学生在QQ 群中的表现更积极。QQ 群提供了一个同伴教学的平台,同学之间会相互解答疑问,帮忙纠正程序中的错误,分享不同的解决方案。
第 10 期
27
专题策划——线上教学(六)
参考文献:
[1] 黄天羽, 嵩天. 面向综合能力培养的软件工程基础训练MOOC/SPOC 混合教学模式[J]. 计算机教育, 2020(1): 123-126.
[2] 嵩天, 黄天羽, 礼欣. Python 语言: 程序设计课程教学改革的理想选择[J]. 中国大学教学, 2016(2): 42-47. [3] 埃里克·马祖尔. 同伴教学法: 大学物理教学指南[M]. 北京: 机械工业出版社, 2011: 1-212.
[4]
刘玲. MOOC 中同伴互评的功能与策略探究: 以edX 、Courra 平台及北京大学的MOOC 课程为例[J]. 工业和信息化教育, 2014(11): 11-16.
[5] 丁瑞君, 武荷岚. 同伴互评在大学物理互动教学中的应用效果分析[J]. 物理与工程, 2017(增刊1): 75-78.
(编辑:宋文婷)
时长为95 min ,说明学生能按时加入在线课堂,上课后基本没有离开教室。直播课堂的互动主要在QQ 群进行,在教学前4周,每次课堂平均互动参与人数为23人(教学班总人数为84人),平均互动消息72条,互动气氛活跃,学生参与度较高。
从教学第2周开始,除了课前小测,还增加了课中小测,前4周的小测平均分如图3所示,其中第2周和第3周课中小测的平均分都比课前小测有所提高。课堂小测的情况反映出学生对第3周知识内容的掌握欠佳,因为第3周介绍基本数据类型,内容多而杂,学生较难马上掌握,但随着后续章节对这些基本数据类型的使用,学生将更熟练地掌握这部分内容。
业,因此互评完成率高。由于互评分数的有效性问题还有待进一步研究[5],课程的互评旨在促进学生相互学习,作业在互评的基础上仍会由助教进行评分。
在线教学实践发现,为了营造学习氛围,增强学生的学习紧迫感,需要为学生提供及时的学习反馈,除了学生可以在SPOC 平台和辅助教学平台上主动查看自己的学习数据外,教师每周还会将SPOC 视
频完成情况、教学平台上课堂小测情况以及作业成绩和互评完成情况推送给学生,督促学生按时学习。
4 结 语
在Python 语言程序设计的在线教学中采用异步SPOC 、辅助教学平台、腾讯课堂和QQ 群结合的多元混合教学模式,在实施过程中重点关注如何提升在线教学的效果,设计相应的教学环节。为营造课堂氛围,吸引学生的注意力,增强互动,设置课前小测和课中小测;引入同伴教学的思想,开展作业互评,促进学生间的相互学习;借助辅助教学平台和SPOC 平台为学生提供丰富、及时的学习评估和反馈,让学生了解自
己的学习情况,激发自主学习。在线教学过程中,也发现一些有利的线上元素,可结合到传统教学中,课程直播的回放能帮助学生回看;学生在QQ 群中的发言和课堂互动比传统课堂更积极;实验教学中,利用QQ 群促进学生间的互帮互学,能解决教师和助教不足的问题。
图3
课堂小测平均值
在教学前4周,共布置了5道程序设计题的互评,每道题由3位同学互评,每人要完成15道题目的互评,
辅助教学平台可由教师设置必须完成互评,否则不能参加课堂小测和提交课后作