融合传统文化、算法与编程智慧的探索实践
作者: 许华丽
随着信息科技课程推进到教学实践的深水区,一线教师在学习新课程资源、初步教学实践之后,必然会面临对课程内容与教学方法的不断审视与融合。本期解码,让我们通过对西部、东部两种课程样态的观察,共同感受一线教师在重构校本化课程时面临的新考验与新成果。
摘要:本文详细阐述了基于算法与编程的校本课程“程序里的中国风”的开发理念、内容结构和实施框架,探讨如何将中华优秀传统文化与算法、编程、计算思维的信息科技学习智慧相结合,并通过一系列项目课程,使学生在学习算法与编程的同时深入了解中华优秀传统文化。
关键词:算法与编程;中华优秀传统文化;融合教学
中图分类号:G434 文献标识码:A 论文编号:1674-2117(2024)23-0000-03
在科技飞速发展的时代,信息科技已成为连接现实与数字世界的桥梁,但我们在追求技术进步的同时,也不应忽视对传统文化的传承与弘扬。因此,笔者所在学校的校本课程“程序里的中国风”将算法、编程与中华优秀传统文化相结合,通过编程展现中华优秀传统文化的魅力,促进文化的传承与发展。
课程特色
①理论与实践相结合,鼓励学生动手实践,增强可操作性。②学习与娱乐相结合,将枯燥的编程知识转化为学生感兴趣的绘图活动,让学习变得更加轻松愉快。③传承和引导相结合,每一章节开篇先介绍中华优秀传统文化,而后引入算法与编程,让学生在学习领略中华传统文化精髓的同时,打下扎实的算法与编程基础。
课程内容结构
“程序里的中国风”校本课程共九章,以中华优秀传统文化为项目主题贯穿始终,形成跨学科学习的内容架构,具体如下。
1.天文篇:星宿神韵,北斗指引
项目描述:“夜看北斗知北南”。在浩瀚的星空中,由于北斗七星位置相对稳定,华夏祖先通过观察北斗七星的位置变换来观测天象、定向导航、判定农时。如今,我国自主研发出“北斗卫星导航系统”。本章抽象模拟北斗七星与北极星的形态及其相对位置关系。
算法:顺序结构。
知识:变量、注释、算术运算符、坐标、turtle基础指令。
计算思维:分解、抽象与建模思维。
2.工艺篇:工艺传家——纳凉折扇
项目描述:在中国历史上,折扇最初作为一种招风纳凉的工具,后为文人雅士所推崇,成为表达情怀、彰显身份、展示诗词字画的重要物件。本章抽象模拟折扇的扇骨、扇面、扇头、扇钉、扇坠等基本结构。
算法:循环结构、循环嵌套。
知识:字符串、换行符、随机模块、turtle基础指令。
计算思维:建模思维与算法思想。
3.文学篇:墨韵留香——诗词书画
项目描述:中国诗词与书法的世界,尽显深邃文化底蕴与独特艺术韵味。本章借助编程,以动态算法生动展现书法艺术的韵律之美,让古老的墨香在现代科技的舞台上重新焕发光彩,让读者在字里行间,感受中国文学与书法的双重魅力。
算法:遍历列表、字符串。
知识:列表。
计算思维:数据模型与迭代算法。
4.建筑篇:古雅容光,窗棂之美
项目描述:中式窗棂,凭借其巧夺天工的镂空技艺与浮雕艺术,完美展现了我国古代建筑的独特韵味与非凡风采。本章运用编程技术,以算法复现经典的窗棂图案。
算法:循环结构。
知识:自定义函数、有参函数、无参函数、缺省函数、模块。
计算思维:模块化设计、泛化功能。
5.装饰篇:装饰之美,古风纹路
项目描述:中国经典纹样塑造了中国美学的DNA,本章探索八卦纹、连钱纹、万字曲水纹、回纹,以及敦煌壁画中的方棋纹,以程序的数字形式再现其魅力。
算法:分支结构。
知识:中国经典几何纹样。
计算思维:算法、迭代。
6.历算篇:算力推演,九章算术
项目描述:《九章算术》不仅是中国古代数学的重要著作,更是世界科技发展的里程碑。本章通过编程,重新解读《九章算术》中的经典问题,用编程与古人的智慧进行一场跨越时空的对话。
算法:分支结构、循环结构综合设计。
知识:IPO(Input Processing Output)模式。
计算思维:数学模型、算法。
7.自然篇:岁月悠悠,水车轻吟
项目描述:中国古代水车结构精妙,由轮轴、辐条、水斗等部件组成,既展现出古人的工艺巧思,又体现了人与自然和谐共处的生态智慧,是中华民族农耕文化的重要遗产。本章通过算法与编程生动再现水车缓缓转动的场景。
算法:循环结构。
知识:turtle动画指令、time模块。
计算思维:模块化思想。
8.时序篇:巧辨农时,节气更替
项目描述:中国的二十四节气精确划分了一年中的时令、气候、物候等变化规律,对农耕生活、文化习俗乃至日常生活都有着深远的影响。本章通过编程绘制一个动态演示的二十四节气图。
算法:循环结构。
知识:人机交互绘图、字典、IPO模式。
计算思维:人机交互算法思想。
9.节俗篇:福泽中华,春节印象
项目描述:随着春节脚步的临近,大街小巷弥漫着浓浓的节日气氛。在本章中,以算法为思,以编程为笔,绘制出红灯笼、对联、中国结、福字等春节的元素,重现传统节日的喜庆与温馨。
算法:顺序结构、分支结构、循环结构。
计算思维:各种思维综合应用。
课程实施框架
下面,笔者以天文篇“星宿神韵,北斗指引”为例,详细阐述内容的整体架构与设计思路。
1.项目情境
“夜看北斗知北南”。由于北斗七星位置相对稳定,华夏祖先通过观察北斗七星的位置变换来观测天象、定向导航、判定农时。如今,我国将卫星导航系统取名“北斗”,既有鲜明的中国特色,又彰显了华夏悠久的历史文化和渊源。现在,让我们以编程语言为桥,架起从古至今的历史通道,在屏幕上绘制出北斗七星的位置关系,模拟它们在夜空中的排列,感受古人智慧的魅力。
2.项目要求
本章通过“绘制北斗七星”项目,掌握使用turtle模块绘制“流浪”的星空、“专一”的北斗,学会通过计算和布局来精准地呈现北斗闪烁。掌握基本的操作指令和代码编写要点,理解编程的顺序结构和分解思想。
3.知识准备
顺序结构、变量、注释、turtle基础指令。
4.项目计划
探索1-1:线的绘制;探索1-2:面的绘制;探索1-3:点的绘制;探索1-4:绘制北斗七星。
5.项目实施
①分析问题。北斗七星实际上是由七颗恒星组成的,其形状类似一个勺子。由于所在的位置和时间的不同,看到的北斗七星的样子也会有所变化。若要用编程来模拟“斗转星移”的动态效果,会涉及循环结构、列表以及turtle动画指令等复杂内容。下面,先简单模拟“北斗七星”和“北极星”在某一特定时刻的静态效果图。
②抽象与建模。将构成“北斗七星”的七颗恒星抽象为七个圆点,北极星则抽象为五角星。为了确定它们的相对位置,参考如下图所示的方格图进行建模。在图中,北极星位于天璇和天枢两颗恒星连线延长线的方向上,并且它与天枢的距离是天枢到天璇距离的五倍之远。首先,需要在图2中准确地标记出“北斗七星”和北极星的位置。接着,通过数格子的方法,可以根据这些标记来确定每颗星的坐标。
七颗恒星的坐标位置,从右到左依次为(0,0) (-2,-4) (-8,-2) (-7,2) (-9,5) (-11,7) (-15,8)。以天璇星为例,如果图中的每个小格代表1像素,实际坐标是(-2,-4)。如果将图中的每个小格代表50像素,实际坐标是(-2*50,-4*50)。可以用变量unit来表示每个小格代表的实际像素,则天璇星的实际坐标是(-2*unit,-4*unit)。
通过给变量unit赋予不同的值,实现北斗七星的等比例缩放,将北斗七星和北极星的坐标位置依次表示。
③算法设计。根据上述数据模型,解决“绘制北斗七星”问题可采用基本有顺序结构构造绘制。算法如下——步骤1:框架代码,初始化设置;步骤2:定义相关变量,并进行初始化设置;步骤3:依次绘制北斗七星;步骤4:绘制北极星;步骤5:书写文字;步骤6:框架代码,绘图结束设置。
④编程实验。在北斗七星中,北斗五玉衡星是最亮的星,北斗四天权星是最暗的星。因此,可设置三个直径变量来表示不同亮度的星星。参考代码省略。
⑤运行调试。在Python环境中执行上述代码,并仔细观察绘制出的图形效果。根据实际的显示效果,适时地调整细节参数,如unit的赋值、圆点的直径,以便优化整体的图形呈现效果。
⑥项目拓展。在战国时期,楚国的屈原创作了《楚辞·天问》,提出了对宇宙的无尽疑问。人类对宇宙奥秘的好奇与探索从未停歇,如今,中国人已能将足迹延伸至地球之外,踏入了浩瀚的太空之中。
6.其他课程内容概览
在其他章节中,基于计算思维,对中国特色的折扇、窗棂、云纹、灯笼等物品的数据模型进行设计,分别利用分支结构、循环结构及嵌套、自定义函数等设计绘制算法,构造出多彩的中国风情。并且,不断挖掘中国各民族的艺术特色,共建共享数字化编程,展现中华民族大团结的深厚情谊。
反思总结
“程序里的中国风”校本课程的九个章节围绕不同的传统文化主题展开,构建了层层递进的探索活动。这些活动旨在循序渐进地培育学生的计算思维能力,引导他们学会对实际问题进行问题分解、抽象分析、数据建模,并设计算法、编写程序以形成创新解决方案。在此过程中,学生不仅能够提升技术素养,更能在亲身实践中逐步加深对中华优秀传统文化的理解与感悟,实现科技与文化的深度融合。