Python程序设计课程教学与实践

时间:2022-06-06 15:08:09

Python程序设计课程教学与实践

摘要:阐述Python程序设计课程的情况、教学目标,EduCoder实训平台的教学实践,利用EduCoder实训平台,实现对Python程序设计课程传统教学模式与线上教育的融合。

关键词:软件工程,程序设计,实训平台,Python,EduCoder。

由于Python提供了高效的高级数据结构,还能简单有效地面向对象编程,强大的内置对象、标准库以及开源的各类扩展库,使得各个领域的人员都能应用它解决实际问题,Python也因此成为多数平台上写脚本和快速开发应用的编程语言。这门课程的目标是让学生理解Python编程语言并掌握应用方法,形成计算思维,能够将Python语言作为解决各类实际问题的工具,并通过实训项目将学生学习的知识转变成能力,最终使学生能够掌握一门帮助专业后续课程学习且具有广泛应用价值的编程语言。

1计算机程序设计课程的特点

Python语言是一门应用性较强的编程语言,因此在开展Python程序设计这门课教学过程中,教师应该思考如何加强学生实际应用的能力。纵观目前大部分高校,教学过程中此类编程设计类课程依然采用传统先课堂学习后实验室照本宣科抄代码的形式。在这种方式下,课堂上以教师为主的讲授理论知识为主,学生被动接受,具体知识点的实践留作课后作业留给学生,让学生课后自己操作练习,主要依赖学生的自觉性。此外,在学生被动接受的过程中,课程理论知识偏多缺少互动,学生很少能主动参与到教学过程中来。为了提高教学效果,在采用传统的教学方式外,Python程序设计课程正在探索采用线上线下结合的教学方式。特别是疫情发生之后,线上教学的刚需更是极大地推动这一改革。目前主流的线上教学平台有中国大学慕课(MOOC)平台、超星泛雅网络教学平台等。这些平台都能够帮助学生提高学习效率具有通用性。但它们都没有考虑到一些课程的专用性。这种教学模式常常带来一些问题。首先是学生线上学习容易出现“刷课”等学习问题,而线上平台对此没有较好的监管措施,另一方面教学过度线上,学生与学生,学生和教师之间沟通机会少等问题。针对程序设计课程教学目前常用线上教学平台的不足,选择EduCoder实训平台探索Python程序设计课程教学改革。

2EduCoder平台功能

EduCoder教育者是一个面向计算机的网络信息技术教育和实践平台。借鉴开源软件的思想,遵循资源共享、协同开发和可信评估三个基本概念,为计算机程序设计课程实践中涉及的任务、人员、资源和协作提供不同层次的支持。EduCoder平台其主要特点包括以下几个方面。(1)提供编译环境。在EduCoder教师可以布置实训作业,让学生利用平台提供的编译环境直接练习闯关,对于程序进行开发类课程我们可以通过记录学生的编程轨迹,将只关心“考试结果”的思想向注重“学习过程”转变,真正锻炼编写程序的能力。(2)汇聚成熟资源。平台不仅提供了大量的各种形式的软件方面的资源(包括资料,代码和数据等),还包括课程实践过程中所积累起来的各种实训项目资源。(3)群体化实践教学。每一个实训任务设置任务描述、知识点说明和编程说明和测试要求,实现边学习、边练习、边测试,理论知识点在左、实训项目在右,理论和实践配套加深学生的记忆。此外每个任务设置讨论区,在讨论区中展示了历届同学的讨论过程和学习心得。

3EduCoder实训平台在Python程序设计课程教学

基于EduCoder实训平台的Python程序设计课程教学是一种线上线下教学方式的融合。教师不仅要准备线下课堂素材,还须准备线上教学视频等。此外教师还要准备互动学习讨论话题,在线实训任务等。在教学实施过程中,利用EduCoder平台开展教学将整个教学过程分为课前准备、课堂教学和课后反思三个阶段。课前准备。(1)教师基于实训项目建立翻转课堂和讨论区,学生们通过扫描二维码进入课堂。教师需要依据教学大纲安排,分析学生的需要,提炼教学重点,在EduCoder平台线上学习视频。(2)教师需要根教材内容开发与之对应的一套实训项目,提前录梳理做好教学设计,整理出课程重点、难点,并设计相应知识点的程序实例的实现和调试。让学生不仅掌握课程理论概念,还对问题求解的实践过程有了深刻的认识。(3)教师要根据课程进度设计并实训项目,实训内容可以借鉴平台上已有的成熟资源,也可以由老师在课前个性化创建。在设计实训项目时教师要把本课程知识点提取出来放在实训练习界面左侧,同时项目既要引入趣味性又要结合现实实际问题。课堂教学阶段。学生借助实训平台直接在线编程、编译、执行,而不用额外安装编译软件。出了互联网这一基本必须条件外,学生不再受软硬件设备的约束,手机或电脑通过平台官网进入课程就可以开始实训,大大延长了学生实训的时间。(1)教师通过实训平台的评论区与学生在线答疑,同时借助翻转课堂跟踪学生的学习过程,统计任务完成情况,了解其编程轨迹等。(2)线上借助趣味学习、比赛激励等多样化的活动内容来丰富学生学习途径,线下借助讨论区建立话题引导学生思考,帮助教学过程良性前进。(3)通过EduCoder平台已有的机制,设置奖惩措施,监督管理学生的线上学习过程,提高学生之间的竞争意识。课后练习设计阶段。课后教师及时布置线上作业,学生按时完成作业。教师可选择典型作业共开,供所有学生讨论和参考。在平台后台,教师可以对学生作业完成度进行分析,从而了解学生知识点的掌握情况。为下一次课程调整教学内容,重点讲解出现了普遍性错误的问题。教学反思。采用EduCoder实训平台的Python程序设计教学,达到了预期的效果,将实践性强的编程基础类课程直接借助平台实现理论+实践教学;讨论区中集合了学生、教师及其他互联网群体的力量和智慧,实现教师与学生、学生与学生之间的有效沟通。但也出现一些不足:(1)EduCoder平台没有专门设立考勤管理模块,无法对学生考勤进行管理,为此笔者考勤使用方式是钉钉群签到方式。(2)每个实训任务都是提供单独的实训报告,没有一个实训汇总模块,无法看到这个学生在本学期本门课所有的实训情况。(3)程序执行结果必须与预设答案执行结果完全一致,系统测评缺乏一定的灵活性。

4结语

基于EduCoder平台实训练习,直接在线上完成编程任务,摆脱了传统纸上作业或考试对实践性强的编程课程的考核不准确性。通过结合生活实际的实训练习锻炼了学生的实际编程能力,进而实现课程目标。

参考文献

[1]夏旭,漆华妹.基于EduCoder平台的高职程序设计类专业课程改革分析[J].无线互联科技,2019,16(10):69-73+93.

[2]欧阳建权,邓漪凡,尹刚.基于Trustie-EduCoder平台的线上线下融合式教学模式研究[J].计算机教育,2020(06):124-127.

[3]丁毅涛.基于线上线下的Python程序设计语言教学改革探索[J].科技风,2021(28):114-116.

[4]冀全朋,严海升.Python程序设计课程教学改革与实践——基于项目教学模式[J].西南师范大学学报(自然科学版),2021,46(11):90-95.

[5]刘满兰,李建辉,关成斌.基于OBE理念的《Python程序设计语言》课程混合式教学方法探索[J].计算机工程与科学,2019,41(S1):203-206.

[6]尹丹梅.面向计算思维培养的项目式教学活动设计与实践[D].河北:河北师范大学,2021.

[7]林金.Python语言在编程类课程教学中的应用[J].电子技术,2022,51(01):26-27.

作者:胡子慧 杨利华 单位:景德镇陶瓷大学