以能力导向的《Python程序设计》课程实践
2021-09-10时泽汉
时泽汉
【摘要】针对高职院校学生理论基础薄弱,偏爱结果明确的实践学习的现状,本文借助国防科技大学开发的头歌 (EduCoder)云原生实践案例开发社区和运行平台,打造以学生能力培养为导向的《Python程序设计》课程实施方案。旨在提高《Python程序设计》课程教学中的学生中心地位,从传统的“知识输出”型课堂向“能力导向”型课堂转变。
引言
近年来,随着“三教改革”等一系列高等教育改革要求的提出,对高职教育的教学方法和考核评价体系提出了新的要求。而作为通信专业高职学生,在日常学习和工作中,无法避免计算机基础和程序设计语言的学习。以往的程序设计课程多以“知识输出”型为主,与实际应用之间存在明显的差距,在程序设计类课程中缺乏对学生编程能力和编程思维的培养。因此,本文提出借助线上开发社区打造学生为主体的程序设计课程教学和日常考核办法,充分调动学生的学习热情,真正培养学生的实践能力。
1 构建“项目为中心,能力为导向”的课程实践
1.1 课程定位和模块化问题构建
在前期的教学实践中发现,传统的程序设计课程教学设计中存在一些问题,实践与理论往往分开进行,每个知识点的实践都是割裂开的,没有形成系统的知识体系。学生在学习后难以融会贯通地解决实际问题,导致程序设计类课程效果不佳,对学生综合素质提升缺乏很好的支撑。
Python作为一种面向对象的解释型计算机程序设计语言,具有很好的易读性和可扩展性,并且语法相对简洁。这使得学生在学习过程中不用太多关注计算机底层知识,只需要关注解决问题的思路和方法即可,这为通信专业学生培养计算机编程能力和计算思维提供了很好的切入点[1]。因此,在课程定位方面,要注重培养学生的计算思维和逻辑思维。而传统教学方式中,大多数学生的参与度不高,知识掌握停留在理解层面,缺乏实践应用。解决这个问题的有效方法就是将传统的“以教师为主体”教
学模式转变成“以学生为主体”的项目问题求解型模式[2]。
在明确课程定位基础上,研究了抽象、建模、分析、交互等计算思维基本要素环节,进而重新梳理Python课程中学生应该掌握的核心知识结构。按照“结果导向,能力为主”的反向教学模式,给出按照教学对象不同进行能力要求不同的项目问题式教学内容框架[3]。
1.2 “问题导向、学生为主、增量设计”的教学方法
在教学内容设计上,采用适合多层次学生的案例设计,让学有余力的学生能够有更多的学习实践案例。以前端知识为例,教学内容主要由一些有一定复杂度的应用问题组成,基于由浅入深的梯度内容设计原则,将前端学习知识拆解成若干个阶梯式的求解任务。
课堂上,前四个课时主要由老师讲解前端网开发基础知识,主要包括HTML、URL、CSS等前端必要知识和网页数据抓取知识,学生全程参与,边讲边练,方便学生及时掌握相关基础知识。后面课程分为几个模块,第一个模块学生参考学校官网,制作一个类似的网页;第二个模塊根据需求,让学生对官网学校近几年在各省录取分数所在网页进行抓取和分析,以获得历年录取分数数据;第三个模块通过抓取到的分数线网页,利用正则表达式提取网页中的分数线数据并存入文本文件;第四个模块对文本文件进行分析,并对分析结果进行图像化展示。通过这几个层次模块实践,由老师引导学生由浅入深、循序渐进对相关知识进行理解和实际应用,逐步实现最终教学目标。在求解这些问题过程中,学生根自己的能力完成相应的步骤,并给予平时成绩认定。
除了课堂任务以外,借助国防科技大学开发的头歌(EduCoder)云原生实践案例开发社区和运行平台,设置每个模块课后练习。练习也是循序渐进的阶梯形式,学生需要在规定时间节点完成相应模块的问题求解,并且需要在完成一个问题后才能进阶更高层次的问题求解[4],最后根据截止时间平台统计的每个学生完成的任务情况,在线时长,调试次数等学习过程数据形成学生的平时成绩,并在生成课程最终考核成绩时按照平时成绩60%+期末考核40%的比例确定学生成绩,并将学生平时的专题问题求解、课堂表现、小组研讨等活动环节纳入考核,更加注重平时能力的锻炼和积累。
2.成效与思考
从两届学生的学习效果来看,在经历第一届学生短暂的不适应后,两届学生较往届同期学生的计算机应用水平和能力均有很大提升。学生学习兴趣明显较之前浓烈,如利用Python程序对word、excel等办公软件进行批量处理,数据库处理,编写小游戏等活动层出不穷,学生参加职业技能比赛成绩突出,效果明显,充分验证了能力培养为导向的课程设计有明显成效。通过把课堂主角让给学生,学生的参与度更高,从而更加能够积极参与课程学习,学习习惯和自主性有很好提升,而参与过程中培养的计算机思维和解决问题能力为学生后续学习和发展提供更好支撑。但是由于本次改革时间还较短,案例丰富度不够,信息化教学手段应用还不够,后续还需着眼教学方法提升,让教学效果更加明显。
参考文献:
[1] 杨帆.主体思维导向视角下的Python课程教学探索[J]. 计算机时代,2021,2:74-76.
[2] 梁爱华.以应用能力培养为导向的Python程序设计在线教学实践[J].计算机教育,2021(2):49-52.
[3] 周海芳.落实计算思维培养的大学计算机基础课程改革实践[J].计算机教育, 2020(3):92-96.
[4] 周海芳.大学计算机基础_课程分级教学改革实践[J].高等教育研究学报,2011,34(12):73-76.
作者单位: 重庆电子工程职业学院通信工程学院