聚焦教学做合一,提升学生核心素养
——以初中Python编程教学为例
2022-09-02刘海玲江苏省苏州工业园区金鸡湖学校
刘海玲 江苏省苏州工业园区金鸡湖学校
在编程语言教学中,教师需要构建知识体系,以实践为主导,以学生为主体,以创新为主旨,让学生真正地将编程语言学透学精,并能学以致用,逐步提升学生创新能力,激发学生的求知欲,构建教学相长的魅力课堂。下面,笔者将从四个维度阐述开展教学实践活动提升学生核心素养的路径和方法。
● 基于真实问题情境提升学科核心素养
新课标关注课程内容的科学性、时代性和实践性,体现“科”与“技”并重,在构建知识、提升解决问题能力的同时,注重创设真实的生活情境,引导学生从真实情境中发现问题、分析问题、解决问题,并引入多元数字资源,提高学生的参与度。
生活即教育,生活决定了教育发展,而教育则会改造生活。例如,笔者在讲解循环结构时,引进了生活中的循环案例(如图1),通过师生共同讨论梳理建构循环知识体系,帮助学生理解知识,在加强学生信息获取意识的同时,提高学生分析问题、解决问题能力。
图1
再如,笔者在讲解多分支结构的知识点时,引导学生观看宣传片了解空气质量的好坏对工作与生活的影响,并给出苏州近3个月的AQI值(如图2),抛出“关注空气质量,呵护你我健康”主题,激发了学生学习的动机。学生根据AQI指数的数值,及时了解当前的AQI级别,并给予户外活动建议;利用流程图(如图3),分析算法,完成代码的编写(如下页图4),最终实现多分支结构知识的有效学习。
图2
图3
图4
通过学生用身份证号码进行核酸检测的真实情境,引导学生思考:在保证信息安全的前提下,如何帮助防疫人员采集身份证信息?在生活中,超市有商品的条形码,付款时有二维码,我们能否利用Python软件制作一个身份证转成二维码的小程序?通过创设真实生活情境,帮助学生树立正确的信息安全意识,引导学生查询二维码生成的原理,知道Python程序要生成二维码需要依赖库PIL和QRcode;通过模块的安装,学生学会部署环境,能够对实际问题进行分析,经过多次的搜索资料、反复调试、优化程序,最终完成个人身份证二维码生成器。通过本次实践活动,学生的团队协作能力、核心素养都得到提升。
● 基于游戏化编程提升计算思维能力
“游戏化”最早出现在2003年,它在某种程度上打破了传统教学中机械训练、枯燥、死记硬背的教学状况,越来越受到师生们的喜欢。
因此,笔者在《猜数游戏——while循环的应用》一课的教学中,首先设计了“点兵点将”环节(复习上节课的知识,为本节课随机数做好铺垫),随机选人玩猜数游戏,增强趣味性;其次,进行问题分析,要求学生利用流程图,明晰算法,调动学生实践探究的欲望;最后,组织多人PK,引导学生思考当前的游戏,还可以在哪些方面有所提升,引导学生完善程序功能,增强该程序的趣味性、适用性。
在游戏化的课程学习活动中,学生通过“编+玩+学”的方式,提升了计算思维能力、分析问题和解决问题能力、创新与综合应用能力,在整个学习过程中,学生一直是学习活动的主体角色,这种教学方式真正实现了教、学、做合一。
● 基于项目式学习提升学生综合能力
项目式学习是一种以学生为中心,强调学生主动探究和创新实践的教学模式。项目式教学让学习自然发生,为学生学习注入新的活力,能够在分析问题、解决问题的过程中,培养学生综合应用能力,增强学生实践与创新的能力,给学生真问题,并引导学生将问题化整为零,逐一破解。
开展项目式教学,需要先确定一个具有挑战性、趣味性或真实性的主题,学生通过对项目的分析,开展实践研究活动,在研究过程中掌握技能,构建新的知识体系;通过将完整的项目分解成若干个可实现的小任务,再逐个击破,最终完成项目的研究。当然,还可以将项目1.0改版升级为2.0,迭代优化代码,让原有项目更具有实用性。
在讲解递归知识的时候,笔者设定了“科赫雪花”项目,在创设情境时,导入“科赫曲线”视频,让学生思考为什么海岸线的面积有限,周长却无限大?带着这个问题,引导学生先分析科赫雪花构建有什么特点,将雪花拆分成多个小单元,并且寻找各单元之间的逻辑关系。在这个项目实践过程中,学生分析图形结构,将雪花进行分形处理:雪花类似六边形,整体内部结构可分为三条边,这三条边构成等边三角形。结构分析如图5所示。再将每边三等分,依次类推……最后,分析每条边上的雪花:有一个是完整的,两个是一半,每一个触角的形状都是一样的(如下页图6)。这样就可以定义一个函数,在绘制基本形状后,利用条件语句与递归相结合的方式,绘制出科赫雪花的等边三角形,以便后续利用计数循环完成整体雪花的绘制。代码主体部分如下页图7所示。
图5
图6
图7
回顾本节课教学,教师创设情境,引出主题(教),学生根据教师提供的视频与学案(学),首先发现问题——确立项目的主题(科赫雪花),然后师生共同分析问题(学)——将项目分形得到小单元,接着解决问题(做)——学生实践探究,逐步完成作品,最后提炼升华——项目学习交流,梳理总结得出递归还可以用到哪些项目中,有能力的学生还可以尝试勾股树的绘制。学生在完成项目的同时,也完成了新知识体系的构建,通过一系列任务分解、反复调试等,思维模式与习惯都得到锻炼,综合应用能力也得到很大的提升。
● 基于丰富体验激发创新潜能
随着人工智能相关课程的逐步推进,基于项目式的体验式教学方法被更多人接受。所以,在Python的第一节课中,笔者从体验Python神奇魅力出发,设定对话Python、知识迁移、深度体验三个体验环节,在让学生了解Python的同时,将学习编程变得更加有趣。
①在对话Python环节,让学生初步了解Python的由来、基本界面,并初次与Python对话互动,模拟问候交流(Hello,Python!Hello,world!),通过对话式体验,引导学生学会发现问题、分析问题,并能解决问题(这里主要指input()、print()语句的应用)。
②在知识迁移环节,学生在原有的APP Inventor编程的基础上,对三大基本结构已经有一定的了解,不同语言的表达方式不一样,但是其核心内容是相同的。给出半成品案例(如图8),提供源代码(如图9),学生根据自己的理解,结合教师提供的帮助性文件,尝试调整相关属性,通过分析实际问题,不断调试、优化代码,绘制出个性化的图案。
图8
图9
③深度体验,将Python与硬件相结合,让学生试玩猜拳PK、掷骰子、点灯大作战等硬件体验活动,让学生在兴奋无比的同时,感受Python强大的融合能力。
在Python编程教学中,笔者创设了真实情境,巧用体验环节,利用项目主题引领,开展游戏化编程教学,践行陶行知的“教学做合一”的教学思想,寻找提升学生创新能力的最佳途径,更好地优化了课堂教学,强化了学生的主体地位,提升了学生的信息素养,构建了魅力的信息技术课堂。当然,要想让学生学好一门编程语言,教师还需要不断探索信息技术学科的教学理念和实践活动,创新教学模式,优化教学策略,调动学生的自主性,促进学生核心素养的养成。