《Python语言程序设计》混合金课建设研究与探讨
2022-06-03戴振华潘学文
戴振华 潘学文
摘要:长期以来,非计算机专业对于是否开始程序设计课程存在争议,对于开设哪门程序设计语言课程也存在不同意见,课程的教学目标也不是很明确,导致学生程序设计应用能力跟不上时代步伐。随着互联网+和人工智能等技术的发展,原先以《C语言程序设计》为主导的非计算机专业程序设计课程已经凸显了诸多问题,而《Python语言程序设计》课程由于在人工智能和大数据领域有着无可比拟的优势日渐受到各大高校的关注,湖南科技学院就是基于这个大环境,对非计算机专业程序设计类课程进行改革,以适应社会对大学计算机应用能力需求。
关键词:Python语言;教学改革;混合式
中图分类号:G642 文献标识码:A
文章编号:1009-3044(2022)08-0135-02
1 引言
随着计算机技术的飞速发展,信息革命再度开启,大数据和人工智能技术成为当今主流技术,简单地以语法讲解程序设计课程的模式已经越来越不适应社会的发展需求,迫切需要改变以《C语言程序设计》为代表的入门级程序课程,取而代之的是跟当前热门技术结合紧密的《Python程序设计》课程。前几年,还只有少数的高校以《Python程序设计》课程为基本程序设计语言,但以北京理工大学为代表的高校不断地推进该门课程的教学与改革,课程教学效果达到了预想的目标,很容易结合不同专业开展教学,激发学生的学习兴趣,提升大学生程序设计应用能力。Python语言能逐渐被接受,究其原因,是因为Python语言有其自身特出的特点,主要表现为以下几个方面[1]:
(1)语法简单,不需要花费大量时间讲解数据类型,没有 C 语言当中的指针、地址等学生感觉比較难于理解的内容,降低了入门学习者学习计算机知识难度,使学习者可以更专注于解决问题本身,增强了学习者的学习信心。
(2)容易进行混合编程,在其程序代码中可以方便插入其他语言的代码,这样对于解决某些具体问题显得更简单。
(3)有强大的第三方库支持,已经有超过十几万个第三方库覆盖了诸多应用领域,计算生态进一步形成,这样就可以支持有兴趣爱好的同学进一步向Python高级编程迈进,真正激发学生学习计算机的内生动力。
(4)Python语言更容易与专业相结合,在非计算机专业程序语言课程中具有极大的优势,可以快速实现实用有趣的程序,增强学生学习程序设计语言课程的积极性。
随着 Python 程序学习的逐渐升温,一些高校也开始着手开展 Python 语言教学,但一般是对于专业学生开设的程序课程,对于非计算机专业开展Python 教学还不多[2]。随着Python 教学改革不断推进,相信越来越多的学校会转到该门课程学习中。
2 程序设计课程教学现状
“以教师、教材、教室、机房为中心”的传统被动接受式学习模式在教学方式上更注重语法的教学,忽视问题导向,导致教师教学完成后,学生感觉不到太多收获。究其原因是其忽略了学生的独立主动的思考性和能动性,没有突出学生创新、创造素质能力的培养,教学与实际需求脱节。通过多年教学实践,笔者发现程序设计类课程教学上存在如下需要解决的问题[3]:
(1)相关专业院系对计算机程序设计类课程培养要求提高,而实际上教学内容与新时代大学生计算机能力的要求相脱节,造成预期落差大。
(2)各学校安排的教学内容较为单一,教学前没有进行系统讨论,教学过程中没有针对学生的知识水平、接受能力、学习特点来实施不同的教学,学生计算思维能力没有得到明显提高,导致学生学完程序设计语言后,不知道该课程究竟有什么用,怎么用,在哪些地方用。
(3)对于高校程序设计类课程,学生的学习期待在不断增长。学生喜欢关注热点问题,如对人工智能、网络爬虫等计算问题十分关心,想通过程序设计课程的学习来接触这些知识,而原先以《C语言程序设计》为代表的学习不能很好地结合热点问题,长此以往,学生会慢慢失去学习积极性。
(4)传统程序设计教学模式已经很难适应社会对人才新思维的要求,特别在互联网+、大数据和人工智能技术飞速发展时代,对人才的计算机能力要求又提升了一个台阶,于是,兼顾兴趣和创新的教学模式已经变得非常迫切,但大部门高校的教学方案和目标严重脱离社会需求,已经不能适应社会发展的需要,导致学生不想学,老师不想教。
分析以上问题得出:激发学生学习兴趣,建立个性化学习模式,结合社会需求,提高其创新思维显得非常重要。随着大数据、人工智能等技术的不断发展,对程序设计的认识从以知识验证为主的问题求解转变为面向实际问题解决为主的计算求解。这些需求倒逼高校对程序设计类课程进行一系列改革,基于“Python语言”课程的混合金课建设研究就是在这样的背景下提出的。
3 《Python语言》混合金课建设方案
Python是一种解释型语言,程序执行效率较高[4],它面向对象程序语言,更切合实际,尤其在人工智能和深度学习等应用领域发挥了越来越重要的作用[5],湖南科技学院原先开设VB程序语言,后期开设过C语言,最近几年主要是开设Office高级,这样对培养学生计算机应用能力还远远不够,因此,启动了《Python语言程序设计》课程教学改革。
3.1 《Python语言》课程改革指导思想
借鉴优秀高校的程序设计类课程教改经验,结合学校实际,通过改进Python教学目标和教学内容,结合线上多种教学平台,实施线上线下混合式教学,对形成的教改阶段性成果不断进行交流改进,分阶段、分步骤地开展研究及实践工作,最后对项目进行总结推广。
3.2 《Python语言》课程教学改革目标
激发学生学习程序设计课程的内生动力和创造性,通过不断调整优化教学内容和教学方式激发学生学习兴趣,建立以应用为核心的教学模式,利用Python程序设计,培养学生的专业思维和创新能力,理解Python生态系统,学会用第三方库解决实际问题,从原先简单课程建设(慕课)到实施金课建设(线上线下混合式教学),从课程闭门教学到跨校协同创新,全方位提升课程教学水平,达到培养学生计算思维能力和创新应用能力的育人目标。
3.3 《Python语言》课程改革要点
借鉴历次程序设计类课程改革和其他高校成功改革经验,突破原先以语法讲解为主的课程教学模式,进行《Python语言程序设计》全方位改革设计,以适应新时代对大学生程序设计能力的要求,主要从以下几个方面去努力:
(1)改进Python教学目标和教学内容,以使教学更贴近学生专业,更贴近学生,从而有效推进个性化学习,提升教学效果,将程序设计课程的有用性和有趣性很好地结合起来。
(2)如何通过实施线上线下混合式Python教学来提升教学质量。
(3)如何有效进行教学效果的分析评估,进而不断改进教学。
(4)如何突破闭门教学模式,进一步实施开放式教学和协同教学。
3.4 《Python语言》课程改革具体方案
湖南科技学院在该门课程上教学经验不足,期望在改革过程中不断改进教学,经过全体教学人员集体讨论,《Python语言程序设计》混合金课建设分成三个部分:课程内容、混合模式、课程平台。
(1)在课程内容教学中,建议按独立单元来设计教学任务,对每个单元设定一个明确的问题或目标。每个单元教学过程中逐步引入新的程序设计要素、新的第三方库,对教学知识点进行有效扩展,以适应更高层次學习。根据学生的实际情况,动态调整知识点和能力训练方案,不断优化教学。建议Python教学课程内容单元主要有:单元1:Turtle创意绘画。单元2:Turtle绘画进阶:参数化、递归和分形。单元3:中文文本处理初步。单元4:中文处理进阶:关键字提取与主题提取。单元5:网络爬虫初步。单元6:网络爬虫进阶。单元7:数据分析研究与可视化。
(2)在单元内容的实施进程中结合混合教学模式,主要采用如下混合模式教学。阶段一:设定目标或问题、讲解相关知识,线上平台发布作业。阶段二:结合学生专业,通过丰富的平台实现学生自学、创意、设计、编程实现。阶段三:若干次线下讨论课后,学生展示作品,老师同步点评、提问、学生记课堂笔记。阶段四:单元教学效果的总结和反馈。
(3)Python主要教学平台的选择。混合式教学一般要使用多种平台进行混合,在《Python语言程序设计》混合金课建设过程中,得到了学校的大力支持,主要的教学平台有:①北京理工大学计算机学院的Python教学平台Python123实践平台,具体网址是:http://python123.io。②中国大学MOOC和爱课程教学平台。③超星教学平台和学校内部课程中心教学平台。
3.5 《Python语言》课程改革实施步骤
《Python语言》课程改革建设主要分成三个阶段,每个阶段设定一定的目标和任务,完成后才能进入下一阶段,逐步推进,重在落实,三个阶段主要目标任务如下:
第一阶段:切实推动Python语言课程教学内容和教学模式的改革,从课程到教材、理念到实践、线下到线上、等级考试进行全方位改革,形成与社会发展相适应的程序设计课程教学内容体系、混合模式和平台。
第二阶段:在教学改革实施过程中,更加注重学生能力的培养,教学质量的提高以及教学标准与其他高校的协同。
第三阶段:总结推广阶段,对该课程的建设进行分析研究,通过对成功经验和不成功经验的分析确定下一步改进的措施,为后续改革和其他课程的改革积累经验。
4 结束语
本文结合湖南科技学院非计算机专业程序设计类课程教学分析该课程教学普遍存在的一些问题,提出开设《Python程序设计》课程的原因,介绍了开设这门课程的背景,并结合学校实际,阐述了该课程实施混合式改革的必要性,提出课程改革的目标和采取的一系列措施,最后对课程改革的方案进行了说明。
参考文献:
[1] 王瑞,唐万梅.“MOOC+翻转课堂”的多元化教学模式研究与实践——以《Python语言程序设计》课程为例[J].软件导刊,2019,18(2):204-207.
[2] 闯跃龙,郭文平.面向非计算机专业学生的Python教学内容设计[J].台州学院学报,2018,40(3):56-60.
[3] 嵩天,黄天羽.Python语言程序设计教学案例新思维[J].计算机教育,2017(12):11-14,19.
[4] 秦科,刘贵松.面向Python应用的大学教学改革初探[J].计算机教育,2017(9):21-25.
[5] 杨荣领.《Python语言程序设计基础》课程教学改革实践[J].高教学刊,2019(3):135-137.
【通联编辑:代影】