融合理论和实践的Python 程序设计课程思政建设
2022-10-22朱友康陈建雄吴天乙
朱友康,周 方*,陈建雄,吴天乙,韩 伟
(武汉生物工程学院计算机与信息工程学院 湖北 武汉 430415)
教育部关于印发《高等学校课程思政建设指导纲要》的通知强调,要把思想政治教育贯穿人才培养体系,全面推进高校课程思政建设,发挥好每门课程的育人作用,提高高校人才培养质量。在Python 语言程序设计课程的建设过程中,以工科课程的实践性优势激发思政价值观念,提高逻辑思维能力和创新精神,在合作探究中培养集体主义和爱国奉献的精神。
Python 语言能够覆盖数据分析的全部流程,从获取数据(数据爬虫)、数据预处理(数据降噪),到数学建模、交叉验证它都能够出色地完成,相较于其他的语言工具,Python非常友好,甚至非计算机专业人士也能够熟练地运用Python 解决数据分析问题。Python 的强大之处还在于集成了大量第三方模块,是数据分析师的首选数据分析语言,也是智能硬件的首选语言。Python 不仅仅擅长数据分析,在常规软件开发、系统管理与自动化运维、云计算、web 开发、游戏开发、科学计算等方面也存在非常广阔的应用场景。因此,Python 语言也必然会加入高校计算机相关专业、数学和大数据相关专业的专业课程。
1 Python 程序设计课程思政教学思路
思政理念下Python 语言程序设计的教学应该注意理论与实践的结合。在教学方法上主要采用案例教学法、分组讨论法、程序验证法等以学生为主体的教学方法。培养学生从多方面思考解决问题的能力,增强自主学习的能力,树立实事求是、认真治学的学习态度。
软件与大数据行业的发展前景,引发了学生对未来的职业愿景。教师要培养学生的创新意识和表达能力,使之树立坚定的理想信念和爱国主义精神,形成认真的工作态度和精益求精的工匠精神,最终成长为有耐心、有奉献精神、有主动性和责任感的时代建设者。
2 理论课程中的思政元素
Python语言程序设计课程包括Python 语言基本概述、变量和数据类型、流程控制语句、常用数据结构、函数与模块、文件处理、面向对象编程等知识模块,从所有这些知识模块中挖掘思政元素,反过来以思政元素来丰富教学设计,结合知识模块中的具体知识点,将思政教育贯穿到教学过程的整个环节。
2.1 Python 概述的思政设计
在Python 语言概述章节中介绍Python 的发展以及我国软件行业的发展现状,引入以谷歌为首的美国企业对中国企业无端打压案例,鼓励学生们努力学习科学文化知识,少年强则国强,只有用知识武装好自己,才能在激烈的竞争中掌握更多的主动权。通过介绍Python 的开源特性,同学们意识到要想让自己变得强大就必须开拓视野,吸取众人之所长,汇集集体的智慧。
教师通过在各类开发环境中演示程序调试,培养学生的严谨科学作风,促使学生了解软件行业的最新发展。带领同学们感受计算机开发岗位应该秉持的专业素质和职业操守,为将来成为一名合格的开发者而努力。并介绍计算机技术在未来的生命力,引起学生对自己将来的职业发展的思考。
2.2 变量和数据类型的思政设计
通过标识符的命名规则,教师提醒学生在平时的练习作业和项目训练中一定要养成良好的标识符命名习惯,遵循相应的规则,以后走上工作岗位才能得心应手。通过运算符优先级讲解,引导学生做事学习要分清轻重缓急,善于抓住事物的主要矛盾。
职业素养是人类在社会活动中需要遵守的行为规范,是职业道德规范中最核心的元素。教师要提醒同学们在平时上课时养成良好的代码编写规范、变量命名风格,适当地在程序中运用注释。引导学生注重职业道德,尊重他人的知识产权。在学校的学习训练中养成较高的职业素养和业务水平,并在循序渐进中培养学生的思想道德修养。
2.3 流程控制语句的思政设计
顺序结构:通过计算一元二次方程的根的编程练习,让学生理解顺序结构程序设计的基本思路,体会程序设计逻辑之美,培养学生用计算机解决生活中实际问题的思维。
选择结构:通过“红灯停,绿灯行”的生活案例,引入分支结构的概念,教育学生在人生的道路中,存在择向、择业、择友、择偶等诸多选择,引导学生树立正确的世界观、人生观、价值观,养成良好的职业道德。面临个人利益与国家利益相冲突问题时,勇于战胜自我,以国家利益为重,毅然做出正确的抉择。在选择结构基本思路的授课过程中,教导学生在人生的道路上会面临各种各样的选择,要懂得哪一条路才是最适合自己的,不能盲目跟风,从而做出最正确的选择。
循环结构:从量变到质变的过程需要日复一日的积累,首先要做到量的积累,才能够达到质的飞跃。这也正是循环控制的本质,通过一定的重复来实现预定的目标。但是在重复的过程中并不是无条件的重复做,而是要在重复的过程中去判断是否完成了目标,如果目标已经达到就不需要再重复了,否则循环就要继续,在设计循环的时候必须要有使循环趋向于结束的条件,不能有死循环。
2.4 常用数据结构的思政设计
组合数据类型:教师通过组合数据类型列表、字典、元组、集合的讲解,使学生体会部分与整体的关系,结构中的每一个元素都有其特定的位置和访问方法,只有每个元素都按规则排列,整体才能具有更强大的功能,才能充分甚至超常发挥每一个个体的力量。培养学生民族团结意识,民族互助意识,共同发展和进步。通过队列的概念、特点、存储结构及算法,潜移默化灌输生活处事哲理。
2.5 函数与模块的思政设计
教师通过介绍函数与模块的基本的语法和设计方法,引导学生思考如何利用计算机解决实际问题,如何管理一个庞大且复杂的应用问题。一项大工程要完成必须分而化之,团队协作是走向成功的关键。通过函数参数传递的方法,引导学生解决问题要善于抓关键,把握事物的关键信息对于问题的成功解决事半功倍。
2.6 文件处理的思政设计
教师通过输入与输出的操作,培养学生注重文化修养、道德修养、计算思维、编程思维等的“输入”,为社会“输出”人生价值,为国家发展贡献力量。输入/输出函数在Python语言中有一定的格式规范,输入函数input 有输出提示信息的功能,可以培养学生全方位思考问题的习惯,在做事之前通盘考虑可能出现的情况,提前做好预案。
2.7 面向对象编程的思政设计
教师通过面向对象的程序设计,引导学生从特殊到一般,从具体到抽象地理解问题、解决问题。在实际工作中,一个完整的软件项目包含数目众多的类(Class),这些类常由不同的程序员分工编写,这就涉及团队意识、成员间沟通交流的艺术,因此其思政育人目标是促进团队交流,学会协作共赢。在教学时,可参照IT 企业项目团队,将学生分成若干组,每名学生负责多个类的编写,最后将全组开发成果整合。
教师通过类的继承,引导学生积极传承中国优秀文化,树立文化自信,同时体会和应用传承与发扬、整体与部分的哲学思想。通过深入讨论分析应用继承机制实现代码复用,引导学生树立课程自信、民族自信。
3 实践课程中的思政元素
Python 语言程序设计课程本身的实践性非常强,而且也可以从课程实践中挖掘丰富的思政素材。从课程实践项目、课程思政案例等维度挖掘思政元素,让学生在实践中体会,在行动中反思,提升工程实践能力和综合素质,实现知行合一。
3.1 课程实践项目
在汉诺塔项目实践训练中,教师要加深同学们对函数递归的理解和应用,做到通过实践项目加强对理论知识的理解。结合海龟画图,动态演示汉诺塔益智游戏解决方案每个操作的结果。
在数据分析项目实践中,教师通过统计习近平总书记讲话片段中“中国共产党”“人民”“抗疫”等关键词的出现次数、频率、第一次和最后一次出现的位置等信息的统计项目实训,号召大家爱国爱党爱家,向英雄们学习,“崇尚英雄才会产生英雄,争做英雄才能英雄辈出”,“伟大出自平凡,平凡造就伟大”,新时代必将是大有可为的时代。
3.2 课程思政案例
教师应用勾股定理求解直角三角形边长、利用海伦公式求任意三角形面积,引导学生了解世界灿烂的数学文明发展史,培养学生精益求精、追求真理的科学精神。激励学生勇于探索世界,增强学生的学习主动性。
教师在循环结构中通过野兔繁殖问题(Fibonacci 数列)、“鬼谷算”(“隔墙算”或称为“韩信点兵”,外国人还称它为“中国余数定理”)、百钱买百鸡(三重循环、算法优化)、猴子吃桃、鸡兔同笼等古代经典趣味问题,培养学生博古通今、积极进取的精神。
教师通过“冒泡排序”“选择排序”“插入排序”“归并排序”等经典算法,从科学的思维方法和数学建模角度分析问题解决问题,引导学生养成好的思维习惯。
多重循环嵌套(科技的力量):教师通过数学家张丘建最先提出的“百钱买百鸡”问题的项目实践训练,让学生深刻体会程序设计的惊人力量,开阔计算思维,学生能感受到走出传统、关注科技发展的必要性,学会利用先进的手段解决问题,做事要有毅力、有恒心、有勇往直前的精神,要开拓思维,有创新意识,做事才能事半功倍。
4 结语
论文结合Python 程序设计课程的特点,探索Python 程序设计课程思政建设的方法。在Python 语言程序设计课程的建设过程中,教师以工科课程的实践性优势激发思政价值观念,使学生能够在课程中感受到强烈的软件之美,形成勤奋敬业的学习工作态度,提高逻辑思维能力和创新精神,在合作探究中培养集体主义和爱国奉献的精神。从理论和实践两个体系探索了Python 程序设计课程的思政建设。