APP下载

文化自信视角下Python 程序设计语言课程思政教学案例设计

2024-12-01陆冰琳

电脑知识与技术 2024年32期

摘要:文章提出以文化自信为主旨的课程思政教学设计的基本原则,以Python程序设计语言课程的Manim模块应用为例,介绍了基于项目驱动式教学法在课程思政编程项目中的实施方法,并提供了项目实施流程。文章具体阐述如何将中国传统文化中的七巧板与现代文化中的冬奥元素相结合,巧妙串联面向对象编程知识点,利用动画讲解编程逻辑,提升学生综合实践能力,深化其对中华文化的认同感和自豪感,实现专业技能培养与价值引领的双线育人目标。

关键词:课程思政;程序设计;教学案例;Manim

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

文章编号:1009-3044(2024)32-0142-03 开放科学(资源服务)标识码(OSID) :

0 引言

2020 年,教育部印发《高等学校课程思政建设指导纲要》,要求全面推进课程的思政建设,完善专业培养体系的思政教育,从而最大程度地发挥课堂教学在思想引领方面的作用,保障人才培养的正确方向与高质量[1]。在新工科建设的背景下,专业课程不仅是知识传授和技能培养的重要途径,更是课程思政建设的基本载体。特别是以程序设计为代表的工科课程,其实践性强的特点为思政教育提供了有力的支撑。因此,探索如何利用此类课程的实践性优势,将思政价值观念有效地融入其中,对于提升学生的综合素质、培养德才兼备的工程人才,具有重要的现实意义。

1 工科程序设计类课程开展课程思政现状

程序设计语言课程的教学具有编程类课程所共有的典型特征,包括高度的理论性和逻辑性、教学内容的枯燥性、单调性等。这些特点增加了教学难度,同时也为在课堂中有效融入思想政治教育带来了挑战。其中面临的难度包括:

1) 专业教学目标与思政育人目标的融合难题。由于程序设计课程本身注重语法规则和编程逻辑的深入讲解,导致在有限的课时内难以深入挖掘和拓展思政教育的内涵。尤其本课程通常作为大一学生的编程入门课程,学生正处于专业基础构建初期,对编程知识掌握有限。因此,在确保专业教学质量的同时,将思政教育有机融入课程颇具挑战,无法轻易达到预期的深度和广度。

2) 思政素材选择与学生兴趣之间的匹配存在挑战。一方面,思政素材的广泛性和多样性使得选择过程变得复杂;另一方面,学生的兴趣和接受度因个体差异而不同,难以用统一标准来衡量。这导致在实际教学中,即便教师精心挑选了思政素材,学生也可能因为缺乏兴趣或理解困难而无法深入体验和感悟,进而影响思政教育的有效性。

3) 课程思政体验的深度与持久性欠缺。由于前述两个方面,学生在程序设计课程中获得的思政教育体验往往较为浅显,缺乏足够的深度和持久性。这使得思政教育可能难以真正触动学生的内心,难以激发他们的情感共鸣和价值认同,从而无法实现预期的育人目标。

针对程序设计类课程在思政教育融合方面所面临的挑战,国内学者已开展了广泛而深入的教学探索。文献[2]通过知识导入、典型案例、教学方法与教学设计的多角度切入,将多维的思政元素有机地贯穿于课程教学之中。文献[3]通过精选课程中9个关键知识点进行课程思政元素的融入,从而全面覆盖课程所设定的德育目标。文献[4]从专业、职业、文化、社会、生活五个视角出发进行思政元素的挖掘,并采用分级教学策略以满足学生的个性化需求。文献[5]基于OBE理念进行课程思政建设,通过对毕业指标、课程目标与考核环节的精确划分和权重分配,验证了思政教育的达成度。文献[6]以石油化工专业为例,将本专业领域内容与课程思政元素相结合进行教学设计,引导学生从个人、企业及国家层面深入探讨案例中的思政内涵,为程序设计类课程的思政教育提供了有益的借鉴和启示。

尽管上述方法在一定程度上提升了程序设计课程的教学效果,但在思政教育融合方面仍存在不足之处。由于程序设计课程与思想政治主题之间往往存在一定偏差,过分追求将所有思政元素融入课程中可能会牺牲思政体验的深度。此外,以挖掘思政元素为主的教学方法若仅在某一教学环节(如课程导入或案例总结)中融入思政元素,缺乏全面性和连贯性。

有鉴于此,本课程在教学设计中选择以一个中心主线来构建课程思政案例,以确保思政教育的连贯性和深度。同时,基于混合式教学模式将课程思政元素贯穿课前、课中、课后整个教学环节,实现思政教育的全方位融入。这种做法不仅有助于提升学生对程序设计课程的兴趣和参与度,更能有效增强学生的思政素养和综合素质。

2 思政元素挖掘与思政素材选取

在深入挖掘思政元素与精心选取思政素材的过程中,本课程紧密围绕党的二十大精神,特别是习近平总书记关于文化自信的重要论述。认识到文化作为国家、民族之灵魂,其兴盛直接关系国家命运与民族强大,故而课程选择以中华文化元素作为教学与实践项目的主线。课程思政建设期间,结合Python 语言特性,教学设计摒弃了传统的重语法模式,转而强调实践应用与第三方模块的探索。以Python模块为媒,以中华文化为桥进行项目设计。

借助不同项目使学生体会中华文化历经时代长河洗涤后所保留的文化经典,以及包容、借鉴、吸收各种不同时代元素后所呈现的活力,使学生更加深刻地理解文化自信的根基与文化强国的战略意义。

3 课程思政案例的设计与实施——以Manim模块应用为例

本文以广东东软学院信息管理与工程学院的专业基础课程程序设计语言课程为例,介绍课程思政教学改革的具体实践,以期对工科类专业的思政教学提供参考。

3.1 授课对象分析

本课程是面向非计算机专业学生开设的一门专业基础课程。在教学过程中,面向对象的概念是课程教学的重点。由于其抽象性,对于初学者而言存在一定难度。然而,此概念在Python语言学习中具有承上启下的作用,是从初级阶段向中级阶段过渡的关键节点。考虑到非计算机专业学生的实际情况,本课程将教学重点放在对象应用上,而非类的创建。本节教学设计将基于Python第三方模块——Manim模块展开。该模块已定义了一些基础类,可作为学生编程实践的基石。项目采用冬奥七巧板作为编程主题,要求学生通过对七巧板中不同图形对象的创建和移动,完成一个北京冬奥体育图标的拼图。以此将抽象的面向对象概念具象化,降低理解难度。同时,此编程目标在激发学生创新意识的基础上,结合北京冬奥的主题,传达其背后所蕴含的体育精神,培养学生的文化意识和文化自信。

3.2 教学目标

1) 知识目标:通过案例项目中所依托的Manim模块,使学生熟练掌握Python中第三方模块的导入技巧及使用规范,能够基于模块定义的类创建对象并正确调用相应的方法。

2) 能力目标:基于面向对象的程序设计理念,灵活运用不同对象实现预期动画效果。在问题求解和程序优化的过程中,使学生的计算思维和数据表达能力得到进一步提升。

3) 思政目标:基于七巧板和北京冬奥两大主题,将中国古今文化元素有机融合。在培养学生创新思维的同时,引导学生增强文化认同感,树立文化自信。

3.3 教学重点及难点

本节课的教学重点是要求学生掌握如何基于模块中已定义的类创建不同的对象,并在调用对象的方法时,能够根据模块文档准确理解方法的功能,并为其设置合适的参数。教学难点是在理解类的继承概念的基础上,掌握Manim图形绘制基本原理,以及动画速率函数的定义及使用方式。

3.4 教学方法和策略

1) 线上线下混合式教学设计:课前通过超星平台分享微课视频与文档资料,引导学生自主学习基础知识。课中重点对项目目标进行解析,指导学生通过小组合作完成编程任务。课后通过设置挑战性任务,鼓励学生在实践中进一步巩固与拓展所学知识。

2) 任务驱动式学习与探索:为了更有效地促进学生主动学习与思考,课程中将复杂的编程动画项目分解为若干个具体任务点。在每个任务点中提供必要的提示,并抛出相关思考题,以此引导学生基于数学动画引擎Manim深入理解类和对象的概念。

3) 师生研讨与成果分享:为了进一步激发学生的学习热情与创造力,教学中采用了师生研讨的教学模式。实践环节中,要求每组分享自己完成的拼图作品,并在此基础上讨论所实现的运动图标对应的体育赛事在北京冬奥会中的表现。这不仅能加深学生对模块、对象等相关知识的理解与应用,更能从中体会中国运动员在奥运赛场的拼搏精神。

3.5 混合式课堂教学构建

3.5.1 课前预习任务

1) Manim库的基本架构和功能:重点关注Manim 如何利用Mobject类来构建动画中的各种元素。基于所给案例代码深入了解Mobject类的属性和方法,理解其作为所有动画对象基础的原因。学习如何通过继承Mobject类来创建自定义的动画对象。

2) VMobject类与贝塞尔曲线:探索VMobject作为Mobject子类的特殊之处,特别是其基于三阶贝塞尔曲线的实现方式。要求学生在课前基于所提供的资源对贝塞尔曲线的概念有基本理解,包括其数学原理和在图形表示中的应用。

3) 分组与素材准备:要求课前自行完成分组,以小组为单位查看在线平台所给出的参考动画实例(图1) 并完成项目的素材准备工作。项目要求以冬奥会为主题,通过Python完成一个七巧板拼图动画。设计要求包括手绘样稿的创作,以及相关图片素材的收集。手绘样稿应体现出冬奥会的元素和氛围,展现出创意和想象力。

3.5.2 课中安排

1) 课程导入

教师利用北京冬奥会30枚充满动感的图标作为视觉焦点,激发学生兴趣,从而引出课程实践项目——借助Python第三方模块,创作以北京冬奥会为主题的七巧板拼图动画。这一设计旨在将传统七巧板的智慧与现代编程技术相结合,通过动画的形式展现冬奥会的独特魅力,同时培养学生的编程实践能力和创意思维。

2) 重难点讲解

教师首先针对课前布置的预习任务进行复习,重点强调如何有效利用Manim文档掌握图形绘制的基本方法。通过实例演示矩形、圆形和三角形的创建步骤,使学生们对图形对象的创建有直观的认知。

为了进一步巩固学生的理解,课程中将提供如图2所示的Mobject基本方法思维导图。该思维导图中清晰地呈现了编程过程中涉及的关键方法及其之间的关系。每组需参考思维导图和官方文档,共同学习并掌握相应方法,进而实现单一图形的显示和移动效果。

3) 项目任务安排

任务1:绘制七巧板原图

在绘制过程中,要求确保各板块的比例准确,并为每块板添加编号。此项目将深入应用多个类,以实践并复习类的继承这一核心概念。在Manim中,可以在屏幕上显示的元素统称为Mobject,它充当了众多具体显示对象类的基类。如图3所示的类均继承自Mobject 类,本项目中将使用到三种类型,分别为VMobject、ImageMobject、Group/VGroup。

任务2:基于手绘样稿进行冬奥拼图绘制

在编程过程中,学生需要确保拼图完成后的整体画面能够在屏幕中完整且美观地显示,因此可对拼图的尺寸进行等比例的缩放调整。这一环节主要考验学生们对于基于Mobject类创建的数学对象如何运用定位方法和变形方法的理解与掌握。

任务3:为七巧板从原始状态到拼接完成的过程赋予流畅的变形动画

此任务的重点在于对动画速率函数的参数设置。为培养学生的创造力和实践能力,项目中要求学生首先基于Manim库中预定义的动画速率函数(图4) 来实现基本的动画效果。在这一学习过程中,教师注重引导并培养学生查阅英文文档的能力和习惯。随后,鼓励学生进一步探索如何构建自己的动画速率函数,以创造出更加独特和个性化的动画展现形式。

3.5.3 课后拓展

在本拓展任务中,将引导学生探索如何使用Py⁃thon将自定义的贝塞尔曲线转化为动画速率函数。这一过程旨在培养学生的创新思维和问题解决能力。为了帮助学生更好地理解相关概念,课程中将利用cubic-bezier.com网站生成的贝塞尔曲线及其参数作为出发点。通过问题——如何利用matplotlib模块绘制贝塞尔曲线,引导学生逐步深入思考并自主验证转化的正确方式。

4 结束语

随着信息技术的迅猛发展,编程教育已成为培养学生创新能力和计算思维的重要途径。然而,单纯的技能传授已无法满足新时代人才培养的需求,思政教育在编程教育中的融入显得尤为重要。本文以北京冬奥七巧板动画编程项目为例,探讨了课程思政在Python编程教学中的创新实践。通过深入挖掘思政元素与精心选取思政素材,本课程将中华文化元素与冬奥精神有机融入Python编程教学中。借助七巧板这一传统数学文化载体,结合Python语言的独特优势,设计出富有挑战性和文化韵味的动画编程项目。这不仅锻炼了学生的编程技能,更激发了他们的创造性思维,加深了对传统文化的理解和热爱。

参考文献:

[1] 中华人民共和国教育部.教育部关于印发《高等学校课程思政建设指导纲要》的通知[EB/OL]. [2020-06-01].http://www.moe.gov.cn/srcsite/A08/s7056/202006/t20200603_462437.html

[2] 路龙宾,王小银,许学斌,等.Python语言程序设计的多角度思政教育教学[J].计算机教育,2022(9):58-62.

[3] 卢俊岭.Python语言程序设计课程思政探索[J].科教导刊,2022(22):102-105.

[4] 苏小红,张彦航,张羽,等.高级语言程序设计课程思政建设的探索与实践[J].计算机教育,2023(8):51-55.

[5] 王芳,王凯,张晓明.基于OBE理念的程序设计基础课程思政改革与实践[J].计算机教育,2021(7):32-36,41.

[6] 赖锦辉.基于目标问题导向教学模式的程序设计类课程思政教学探索[J].计算机教育,2023(5):50-54.

【通联编辑:代影】

基金项目:2022 年广东省本科高校教学质量与教学改革工程建设项目——中国文化元素赋能程序设计语言课程思政建设的实践改革与探索(粤教高函〔2023〕4 号) ;广东省高等学校教学管理学会民办高校教学质量管理专业委员会2023 年度课题——知识可视化在Python 混合式教学中的应用研究(GDZLGL2319)