当前位置:首页 期刊杂志

思政理念引领下的Python程序设计课程教学改革研究

时间:2024-05-04

梅雅欣 杨利 宛楠 潘媛媛 张亭亭

摘要:在大学教育中,计算机教育占据重要地位,是最重要的通识课程之一。传统的计算机教育因其较强的专业性,更侧重对学生专业技能的传授,缺少对学生认知与观念的引导。教师应以立德树人为导向,将思政与专业教学相结合,帮助学生在学到本领的同时树立正确的世界观、人生观、价值观。以Python程序设计课程教学为例,深挖其中的思政元素进行课程改革。主要从理论教学、实验教学、评价方式三个方面给出了具体的实施方法与案例,为计算机类课程提供参考。

关键词: 计算机教育;立德树人;思政;Python程序设计;课程改革

中图分类号:G642      文献标识码:A

文章编号:1009-3044(2023)35-0163-03

开放科学(资源服务)标识码(OSID)

0 引言

2004年以来,我国先后出台了关于加强学生思想政治教育的系列工作文件,以此为契机,2014年上海高校首次提出了课程思政的理念;2016年12月,在全国高校思想政治工作会议上,***总书记对课程思政理念给予了充分的肯定;2019年8月,中共中央办公厅、国务院办公厅印发了《关于深化新时代学校思想政治理论课改革创新的若干意见》;2020年5月,教育部印发了《高等学校课程思政建设指导纲要》[1]。多年来的探索,逐步推进着高校教育从思政课程向课程思政的转变。各种文件和举措都充分表明了思政教育在我国高等人才培养过程中的重要性,这是新时代背景下课程改革的必然趋势[2]。

当前我们处于开放的多媒体时代,学生的主流价值观和信仰教育不断受到冲击,教育者面临着一个“为谁培养人,培养怎样的人”的关键问题。将思政融入高校课程教育有助于学生认识国情,肩负起历史的责任,成为美好生活中的合格继承者与建设者[3]。

1 通识课程主要组成

纵览高校人才培养体系,自20世纪80年代起,通识课程的地位不断提升,成为培养学生综合能力与素养的重要课程。如图1所示,通识课程所涉及的领域主要包括三个模块,分别为人文科学、社会科学和自然科学,而在自然科学中,计算机科学是其重要的组成部分[4-5]。

计算机技术的不断发展使其对推动国民经济与国家发展有着不可推卸的责任与不容置疑的作用。编程语言教学是计算机类课程的基础,本文以Python程序设计教学为例,分析其在理论和实践教学中的思政元素。Python语言是当下最流行的编程语言之一,如图2所示,在近几年的TIOBE排行榜中更是高居榜首,其在编程语言中有着举足轻重的地位,同时也是各高等院校普遍开设的编程类课程之一。全球疫情肆虐期间,Python在获取疫情数据、分析疫情走势、数据可视化等工作中发挥了重要作用。为此,将思政元素融入Python课程教育既响应国家号召,也顺应时代需求,它使计算机课程教育教学回归到“育人”本身。

2 Python思政育人目标

Python程序设计是编程类基础课程,区别于传统思政教育课程,对学生的逻辑思维能力和动手实践能力有着较高的要求。因此,对于该课程的思政改革更需要结合课程特征进行,使思政教育与专业教育齐头并进,提高学生认识世界、理解世界以及利用专业知识改造世界的能力。具体来说,以递进的方式培养学生四个方面的认知与能力,如图3所示。

2.1 培养学生的课程自信与行业自信

科技是推动发展的第一生产力,近些年来国家的发展离不开“物联网”“人工智能”“大数据”“云计算”以及“5G”等热词,这些技术的发展少不了Python的助力[6]。通过课程引入向学生介绍相关行业的发展趋势及其对社会发展的重要性等内容,让学生了解课程开设的意义,从而激发学生的专业学习兴趣。

2.2 培养学生的求知精神与求精精神

与其他编程类语言不同,Python虽然没有烦琐的语法和复杂的语言规则,却对代码块的格式要求极高,也因此被誉为最美丽的语言[7]。这就要求学生在代码书写过程中对细节高度把握,否则会导致一系列程序错误,如空格和Tab的错误使用会导致代码运行的异常、单个字母的差别会导致运行出现不同的效果等。通过对Python语言的诸多细节学习可以培养学生的求知探索精神,而代码的编写规范可以培养学生的求精精神。

2.3 培养学生的沟通能力与合作能力

Python作为一门面向对象的语言,十分适合大型程序开发,将开发任务分为多个模块交由小组分工合作完成,能大大提高开发效率。然而,模块内的代码书写规范与模块间的接口设计却是一个较大的考验。通过实验课程将学生分组,要求其共同完成项目任务,有利于培养学生的沟通能力与合作能力。

2.4 培养学生的人生观念和价值观念

教育是国之大计、党之大计。Python技术就像一把双刃剑,合理地利用有助于学生走向正确的职业道路或求学道路,为国家做贡献;而错误地使用不仅可能给他人带来伤害,甚至会触及国家红线,危害国家安全。坚持以立德树人为导向,在给学生传授知识的同时,潜移默化地结合科学精神,做到“术道融合”,有助于引导学生正确地利用所学所知,树立正确的人生观念和价值观念。

3 理论课程内容中的思政设计

Python语言的设计并非单一的,它结合着其他编程语言的优势而诞生,其中的语法设計蕴含了丰富的思政元素。这些元素与课程的有机结合有助于激发学生的家国情怀、奉献精神与创新精神等。这里以“面向对象程序设计”这一章节为例,浅谈教学过程中的思政设计。作为面向对象的语言,Python具有三大特性:继承性、封装性、多态性,这三大特性有着不同的思政体现。

3.1 继承性中的家国情怀

继承性允许类在创建时多重继承,子类既能继承父类的属性与行为,也能拥有自身的特性,这使得开发过程中代码冗余度大大降低,从而提高开发效率。继承的理念与国家的发展不谋而合,一代代中国共产党人继承了先辈的优秀品质,带领历尽艰辛的人民走出了最黑暗的时期,迎接黎明,最终找到了专属的中国特色社会主义道路。正如著名学者辜鸿铭在《中国人的精神》系列讲座中提到的:“中国人最大的品质是温良”[8]。共产党人继承了这份温良,因为这份温良得以深入群众,得以发展壮大,得以使国家蓬勃发展。而现在,一代又一代共产党人继承了先辈的品质与精神,才使得国家少走了许多弯路,才使得中华民族能够屹立在世界民族之林,长青不倒。

在课程讲授继承性概念时,可以以党的传承为例。在Python中,继承性允许新的类继承并扩展原有类的功能,同时保留原有类的特性。类比党的传承就是指新一代党员在前辈党员的基础上发展壮大,继承和发扬共产党的优良传统和作风。共产党通过代代相传的方式,保持着自身的稳定性和凝聚力。通过这个案例教导学生延续老一辈共产党人的优良传统,树立正确的家国情怀。

3.2 封装性中的奉献精神

封装性将数据与基于数据的操作封装在一起,使其构成一个不可分割的独立对象。这种特性使得对象的实现细节尽可能地隐藏在内部,而对外只保留一些可用的接口[9]。正因为封装性的特点,第三方人员在使用对象时无需理解其实现逻辑便可直接利用。封装性与社会生活中所有在岗位上付出的人们有着相似的属性。疫情时,医护人员迎难而上,投身一线;钟南山院士等不畏病毒,挂帅出征;火灾时,消防员战士身负使命,逆向前行;科研中,研究人员奉献青春,投身事业……哪有什么岁月静好,之所以能享受美好的生活,只是因为有人负重前行。这些奉献者的付出过程对大众是不可见的,却是构建美好生活的不可忽略的一份力量。

在课程讲授封装性概念时,以新冠疫苗为例,提问学生是否接种过新冠疫苗、是否了解该疫苗的用途以及研发过程。通过三個问题引导学生思考,生活中有许多类似新冠疫苗的例子,我们不了解其背后的故事,但是享受到了相应的红利,这是因为有人在背后默默奉献,这就是封装性的体现。

3.3 多态性中的创新精神

多态性体现在向不同的对象发送同一个消息时,不同的对象会产生不同的行为(即方法)[10]。多态性与继承性密切相关,子类继承了父类的各种方法,却又保持自身的特性,在调用父类方法时会把子类本身当成参数传递给方法,最终产生与父类不同的结果。这种一脉相承却又百花齐放的核心思想与科技的进步、文化的更迭具有相同的内核。在继承中学习,在多态中创新,单一地固守旧传统、旧思想、旧方法,无法带来进步;取其精华,弃其糟粕,不断创新才会带来新的民族希望。

在课程讲授多态性概念时,以春秋战国时期百家争鸣为例。在思想方面,荀子是儒家学派的代表人物,而韩非子和李斯作为荀子的徒弟,却是法家的代表人物。韩非子和李斯都可以看作是荀子思想的继承者和发展者,他们基于荀子的思想基础进行了扩展和创新。在荀子的思想观念中,认为天道自然、人性本恶、隆礼尊贤而王,重法爱民而霸,因此即使礼法并重也要以礼为本,这样才能避免国家陷入暴政。基于时代背景,韩非子与李斯虽然继承了这样的思想,但也进一步结合实际社会情况提出了新的方法与理论,成为杰出的法家代表人物。此外,虽然都遵循法家思想,韩非子与李斯的主张仍有差别,这就是继承后的多态性。

除“面向对象程序设计”这一章节有诸多思政融合点外,Python程序设计其他章节还存在很多可以融合思政元素的地方,经过梳理汇总,一些典型的融合点如表1所示。

4 实验课程内容中的思政设计

Python程序设计是一门实践性要求较高的课程,除理论基础要打牢外,还需要有相应的实验课程进行辅助。基于小组讨论法和项目教学法,根据班级人数对学生进行分组,3~4名学生自由组队,共同完成实验内容。通过这种形式,让学生检查自己对所学知识的掌握情况,查缺补漏,锻炼组员之间的协作能力,培养自身的责任意识。同时,提高组与组之间的竞争意识,从而不断地提升自我,增强综合知识应用能力与动手实践能力。

在具体的教学实施过程中,教师可以结合实际的社会问题来发布实验任务,例如在实验课中要求学生开发一个警匪追击小游戏。学生需要对游戏进行模块分解,如在设计类和对象时需要考虑警察类和匪徒类这两个父类下有哪些子类,即在真实案件中会出现的匪徒有哪些,追击不同匪徒需要出动的警种有哪些,不同警种的特性有哪些等。这都需要学生通过各种工具搜集资料来丰富游戏的设计,在搜集资料的同时可以增加学生对现实问题的了解。

5 评价方式改革

在传统Python程序设计的评价方式中,通常以“评学”为主,表现为期末考试与上机实验,这主要是对学生编程能力与技术掌握的考核。然而,将思政元素融入其中就需要对评价方式进行改革,以帮助学生更加全面地发展思维。

与评价学生的知识掌握程度不同,课程思政教学目标较为宏观抽象,大多属于意识形态和价值塑造的范畴,缺乏具体的量化指标。这就需要在评价时,将“评学”(基于学生知识与能力的掌握程度评价)与“评教”(基于学生认知、情感领域的学习体验评价)相结合,具体实施方式如图4所示。

6 总结

计算机类课程作为高校人才培养中最重要的通识课程之一,虽然专业性较强,但其中所蕴含的思政元素却丰富多彩,需要努力挖掘出专业课程与思政的最佳融合点。本文以Python程序设计教学为例,列举了其中蕴含的典型思政元素,这对“智育”和“德育”都起到了很好的教学引导作用,实现了它们的有机结合。在接下来的教学中还需进一步地丰富优化案例,从而实现思政与Python的交织,给学生带来更好的学习体验。

参考文献:

[1] 黄霞,徐晖,胡宇慧.内蒙古地区高校推进通识教育课“课程思政” 建设路径分析[J].集宁师范学院学报,2021,43(3):24-28.

[2] 姜嫄.高校“课程思政” 建设的探索与实践研究[D].杭州:杭州电子科技大学,2022.

[3] 朱浩.论高校“课程思政” 建设中的国情教育[J].宁夏师范学院学报,2021,42(3):65-69.

[4] 董婷.高校通识课程的德育功能研究[D].武汉:武汉大学,2020.

[5] 丛慧卉.我国大学通识教育实施现状与对策分析[D].长春:吉林大学,2007.

[6] 刘艳玲,姚建盛.Python在数据可视化中的应用[J].福建电脑,2020,36(3):68-70.

[7] Mark Lutz, David Ascber. Python语言入门[M].北京:中国水利水电出版社,2001.

[8] 俞祖华,杨玉好.审视中国民族性格的两种目光——史密斯《中国人的性格》与辜鸿铭《中国人的精神》及其在启蒙思潮中的影响[J].烟台师范学院学报(哲学社会科学版),2000,17(4):46-51,60.

[9] 贾艳平.计算机软件开发中Java编程语言的应用体会[J].电子技术与软件工程,2020(23):44-45.

[10] 赵学武.面向对象程序设计中的多态性[J].电脑知识与技术,2014,10(21):5036-5039.

【通联编辑:王 力】

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!