学术论文投稿/征稿

欢迎您!请

登录 注册

手机学刊吧

学刊吧移动端二维码

微信关注

学刊吧微信公众号二维码
关于我们
首页 > 学术论文库 > 教育论文 小学编程课程生活化教学探究论文

小学编程课程生活化教学探究论文

31

2023-06-21 13:37:55    来源:    作者:xieshijia

摘要:文章基于生活化教学的理论依据,首先对小学编程课程生活化教学的内涵进行了解析,然后提出了小学编程课程生活化教学的模型构建,最后对小学编程课程生活化教学的案例进行了分析。

  摘要:文章基于生活化教学的理论依据,首先对小学编程课程生活化教学的内涵进行了解析,然后提出了小学编程课程生活化教学的模型构建,最后对小学编程课程生活化教学的案例进行了分析。

  关键词:编程课程;生活化教学;教学案例;小学

  随着人工智能的不断发展,编程已经成为继读、写、算之外的第四项基本能力,被各国纳入信息技术课堂[1]。当前,一些国家已将编程纳入中小学正规课程,以期全面推动青少年编程教育的快速发展。

  开展中小学人工智能教育、培养青少年信息技术学科综合素养,已成为我国教育现代化改革与发展的重点。2017年,国务院印发的《新一代人工智能发展规划》指出,在中小学阶段设置人工智能相关课程,逐步推广编程教育[2]。2018年,教育部印发的《教育信息化2.0行动计划》要求加强学生信息素养培育,充分落实适应信息时代、智能时代发展需要的人工智能和编程课程内容,积极推进“互联网+教育”发展[3]。2019年,教育部办公厅印发的《2019年教育信息化和网络安全工作要点》指出,“今年将开始推动在中小学阶段设置人工智能相关课程,逐步推广编程教育”[4]。这些政策性的文件都要求调整信息科技课程内容,体现了国家对于中小学编程教育的重视。

  然而,我国青少年编程教育整体还处于起步阶段[5],由于缺乏完整的课程标准和统一的指导教材,中小学编程课程教学的随意性较大,一线教师的教学方法也各有不同。通过查阅资料,笔者发现当前中小学编程课程教学常采用项目式教学、案例式教学、驱动式教学和游戏式教学等方法。郁晓华等[6]指出,尽管这些教学方法设计意图良好,教师运用时的效果却各不相同;杨文正[7]认为目前的教学存在情境创设不到位、与学生熟知的生活现实联系得不够紧密、过于拘泥于教材等问题。

  据上所述,编程教学无疑是学生思维培养的重要途径[8],而对于小学编程课程一线教师来说,如何充分挖掘生活中的教学资源,创设更加贴近现实生活的学习情境,合理高效地开展编程课程教学,从而吸引学生在有限的课堂时间内持续自觉主动学习编程,是目前小学编程课程教学亟待解决的现实问题。基于此,本文拟对小学编程课程生活化教学加以探究。

  一、生活化教学的理论依据

  (一)生活教育理论

  人民教育家陶行知先生提出生活教育理论重要教育思想[9]。生活教育理论重视生活与教育的关系,从根本上将社会生活与教育融为一体,反对传统教育脱离生活而以书本为中心的做法。本文提出的生活化教学受到生活教育理论的启发,强调与真实生活情境结合,旨在改变传统教学模式重课本教学而轻实践的弊端,关注学生的知识发展,以“行”求知,让学生在完成生活任务的同时,也能完成对编程知识的探索,用生活进行教育,融合生活教育与编程教育,实现知识的循环迁移,释放教育的本质力量。

  (二)“生命·实践”教育理论

  华东师范大学终身教授叶澜的“生命·实践”教育理论认为,要改变学校日常的教学模式,推动师生间的有效互动,实现实践层面上的转换,沟通学生的“书本世界”与“生活世界”[10]。本文提出的生活化教学以师生合作的形式开展,改变了过去单一的编程环境,巧妙地创设了生活环境与计算机环境相结合的新型学习空间,实现了生活实践和书本知识的连接,有效地激发了学生的学习兴趣。

  (三)体验式教学理论

  组织行为学教授大卫·库伯在20世纪80年代提出了体验式学习理论,体验式教学由此发展而来[11]。体验式教学模式认为,教师应基于真实情境开展教学,引导学生进行实践探究,对问题进行观察反思,抽象概括矛盾的特征,总结具体经验,应用到新的问题情境中,不断地送代循环。本文提出的生活化教学是一个面向实际生活场景的送代过程,在选取生活事件的基础上,鼓励学生在探究过程中发现并分析问题,通过送代的编程设计过程,抽象概括编程概念,优化算法策略,完善程序设计,这些都与体验式教学理念相一致。

  二、小学编程课程生活化教学的内涵解析

  小学编程课程生活化教学是指利用生活事例构建教学情境,让学生从生活实践出发感知编程含义、体验编程过程、习得编程知识,进而培养学生的问题解决能力的编程教学形式。其教学内涵如下。

  第一,教师创设生活情境,学生参与生活事件。小学编程课程教师挖掘与编程教学内容相关的学生生活经验,利用其关联性积极创设生活情境、布置生活任务、组织编程教学,以“境”激“情”,如此,学生在该情境下参与生活体验,可激发积极的学习情绪,逐步提高发现问题的能力。第二,教师描述生活现状,学生发现生活问题。小学编程课程教师在情境教学下描述生活问题,引导学生在情境感知中发现问题,主动思考,以调动内部学习动机。第三,教师分解编程任务,学生厘清编程思路。小学编程课程教师辅助学生抽象出复杂问题的特征、分解问题解决思路,从而制订出能解决问题的编程方案。第四,教师搭建学习支架,学生建立算法模型。小学编程课程教师为学生提供学习支架,引导学生运用流程图和思维导图等认知工具建立数学思维模型,分析程序中包含的角色,将功能合理划分给不同的角色,分解脚本职责,发展分治、遍历的算法思维。第五,教师分析程序语句,学生完成程序设计。小学编程课程教师引导学生针对不同的模块选择和构建合适的算法,指导学生进行程序设计,学生则通过迁移教师讲授的认知策略和优选算法,利用编程工具进行编程设计,培养问题迁移能力和解决能力。第六,教师测试程序效果,学生优化动画程序。小学编程课程教师查看学生程序调试效果,组织学生汇报分享,学生则结合同伴和教师评价对程序进行调试、改进,不断优化算法,从而提高自己的纠错送代能力。

  三、小学编程课程生活化教学的模型构建

  本文基于生活化教学相关理论,从具体经验和编程设计两个阶段出发,借鉴体验式教学理论和典型的双循环教学模型,构建了以“生活情境、编程环境”双向耦合为基础,以“生活体验、发现问题、特征分析、思维建模、程序设计、调试送代”为主要环节的面向小学编程课程的生活化教学模型,如图1所示。

0103fc600e25ca11013e39915ce801.jpg@1280w_1l_2o_100sh.jpg

  小学编程课程生活化教学模型采用生活情境与编程环境双向耦合的层次结构。它由具体经验和编程设计双循环教学圈组成:具体经验即成功完成一项生活事件的所有活动;编程设计则是指在编程环境下,基于特定的编程任务而展开的程序设计活动。两个教学圈之间存在着横向对应关系,即生活体验与思维建模、发现问题与程序设计、特征分析与调试送代。实践指导和迁移应用是连接两个教学圈的纽带,可实现编程在不同学习领域的循环转化,使学生沉浸在探究过程中,给学生带来新的体验。下面将对编程课程生活化教学模型的各个环节进行具体阐释。

  第一,生活体验。在小学编程课程生活化教学中,教师应结合编程教学目标和学生生活经验,通过引入真实案例或实地体验等方式创设发现编程概念和定理的教学情境,引导学生在观察中体验生活任务,从而培养其发现问题的能力。第二,发现问题。小学编程课程教师应以问题为中心,创设真实的生活情境,利用学生先验知识与真实情境发生互动时产生的认知冲突,激发学生创造性解决问题的内驱力。在编程课堂中,教师将学生进行异质分组,引导其在生活体验中发现问题,提出利用编程解决实践问题的新思路,并在此过程中不断培养学生的迁移应用能力。第三,特征分析。小学编程课程教师要向学生提供学习资料和认知工具。学生在实地体验过程中获得直观感受,在浏览和搜集学习活动资料的过程中建立感性认识,并借助学习支架构思能解决问题的编程方案,包括提取问题的关键特征、分解任务,以及明确程序设计意图和实现功能。学生从前一阶段获得的具体经验中抽象出编程概念,由感性认识升华为理性认识,即完成一个自我认知过程。第四,思维建模。小学编程课程教师应引导学生体验编程思维过程,在学生理性认识的基础上,组织学生进行课堂讨论和集体交流。教师要通过“对话法”帮助学生将复杂的程序语言转换成易于理解的自然语言,并引导学生运用流程图绘制出程序脚本的执行过程,使学生针对不同的模块选择和构建合适的算法,最终建立集体编程思维模型。第五,程序设计。该环节是小学编程课程生活化教学设计的核心,即在教师的指导下,学生应选择和构建合适的算法框架,以实现各模块功能的有机融合。学生通过迁移教师讲授的认知策略优选算法,选择和构建合适的算法,利用可视化编程工具设计解决问题的程序,同时完成面向真实生活的任务。第六,调试送代。小学编程课程教师要指导学生对动画程序进行多轮的送代优化,最终完成调试,以有效培养学生的纠错送代能力。

  四、小学编程课程生活化教学的案例分析

  (一)案例简介

  本文以Y市高新小学编程社团为研究对象开展教学。为了便于学校安排课程,同时兼顾社团课程进度,按一个学期(20周/学期,2个课时/周)设计了8个单元32个案例的校本编程课程。所有案例都基于Kitten平台,对象为五年级学生。每个案例从生活感受和生活事件出发,由浅入深,同时具有一定的新颖性。本文以第二单元中的“交通信号灯”一课为例,展示教学过程(适用年级:五年级,设计时长:60分钟)。

  “交通信号灯”编程项目是在学生已经掌握图形化编程软件Kitten基本知识的前提下开展的与生活情境相结合的教学活动,共计4个课时。该活动的教学三维目标如下:在知识与技能方面,掌握条件、循环控制语句的使用,熟练使用变量、常用运算逻辑和造型动作;在过程与方法方面,通过个人探究和小组合作,利用流程图辅助算法建模,利用Kitten软件模拟现实生活中的十字路口交通信号灯和通行规则;在情感态度与价值观方面,通过体验学习增强编程兴趣和合作精神,培养编程思维和问题解决能力。

  (二)教学设计

  笔者将参与编程项目“交通信号灯”教学活动的30名学生分为四个小组。其具体教学活动设计如表1所示。

360截图20230321163045713.jpg

  “交通信号灯”改进后的算法程序框图如图2所示。

360截图20230321164056885.jpg

  (三)教学成效

  为了验证生活化教学在小学编程课程中的效果,笔者对部分教师和学生进行了调查,并对结果进行了统计分析。调查采用了学生测试、访谈调查、随堂听课、教师访谈等方法。对搜集到的质性材料进行分析,研究结果如下。

  1.课程认知维度。编程语言因命令冗长、结构复杂、逻辑思维抽象等特征,常使学生产生畏难情绪。如在访谈中,学生LZT说:“我每天都会路过有信号灯的路口,让我编程模拟那太难了!”因此,在校本课程开设初期,学生普遍认为编程课程难、听不懂、不会操作等,随着课程的深入,生活化编程教学形式有效减轻了学生的认知负荷,即让学生在专注于编程涉及的情境逻辑和问题解决的同时,不必担心编写程序的机制,从而使学生更愿意参与编程课程学习。

  2.课程体验维度。传统的编程教学以讲授为主,教学方法单一枯燥,加上算法知识专业性强等特点,容易使学生失去学习兴趣。实践证明,将生活情境教学渗透编程教学过程,有效避免了单纯讲授知识点带来的枯燥乏味,学生的积极性和参与度有所提高。在总结环节,教师通过提问的方式了解学生的课堂感受,学生ZYT表示:“真是生活处处皆可编程,这样的课程太有趣了!”

  对授课教师课堂观察和课后访谈等资料进行质性分析,可以发现教师运用生活化教学设计后,教学氛围融洽,课程环节紧密联结,学生积极参与,反过来有效激发了教师的教学热情,给编程课堂注入了活力。学生成为课堂的主人,教师可以将更多时间放在课堂上关注教学。概括来说,通过设计“交通信号灯”编程项目,能有效提升编程课的趣味性、学生参与度和教师体验感。

  3.学习态度维度。在课堂教学中,笔者通过观察发现,有的学生完成小车遇到绿灯通过十字路口的任务后,提出了“是否可以同时设计行人过十字路口让动画模拟更真实、更有趣?”的问题,还有的学生针对“开始”功能部分的动画模拟机制,提出了自己的设计方案。这些现象均表明,学生开始从被动接受知识转向积极自主探索学习,学会了通过判断、分析与综合各种已有资源进行设计修改,并利用合适的算法形成问题解决方案,学习态度得到了大幅度改善。

  4.解决问题维度。在完成编程项目“交通信号灯”思维建模环节后,笔者对学生识别问题和思维迁移的能力进行了考查。前测任务是在同类型生活情境下,将汽车角色切换为行人,道路规则相似。要求学生进行问题描述,绘制流程图并进行算法设计。后测任务与前测任务一样,但根据学习任务的完成情况,针对完成较差的学生使用与“交通信号灯”生活情境类似的“信号灯”生活情境,而针对完成较好的学生则使用复杂度提升后的“感应门”生活情境。经统计,在参加课程学习的30名学生中,同类型前后测中有4名学生,拓展性前后测中有12名学生在完成流程图设计方面的能力有所提高。概括来说,通过实施编程项目“交通信号灯”生活化教学,超过一半的学生在解决问题过程中思维能力有所提升。

  5.教学效率维度。创意作品作为课程最终作业的评估,是对学生问题解决能力的一次考查。笔者通过与以往教学效果进行对比发现,相同的教学内容和时间,采用生活化教学方法完成教学任务的平均用时为48分钟,而采用以往教学方法需要超过60分钟,并且仅有不到一半的学生完成了程序的编写。同时,两者在作品质量上也存在明显差异,即应用生活化教学后的作品质量明显高于以往作品。

  教学实践证明,基于生活化教学的编程课能有效调动学生参与的积极性,方便学生体验编程的乐趣,不断送代改进程序设计,最终实现动画模拟,收获了满满的成就感。但由于学生的迁移能力和解决问题的能力都需要经过长期培养,而这里仅是一个项目案例,故今后将继续开展编程课程生活化教学实践,以促进学生综合能力发展。

  总之,将生活经验融入小学编程课程教学符合教育信息化发展的时代需求[12],是小学编程教育多样化发展的创新方式。本文通过对小学编程课程生活化教学进行概念论述、模型构建与案例分析,发现在小学编程课堂开展生活化教学能够提升课堂教学成效。虽然本文开展的课程教学实践受时间和样本数量限制,还存在一些问题,但应用结果初步显示出所构建模型的合理性和有效性。因此,在后续实践研究中,我们将进一步扩大实验对象范围,改进实验过程和方法,不断优化研究设计和评价标准,从而丰富生活化教学理论及内涵,提高生活化教学方法对小学编程课程教学实践的指导价值。


  参考文献:

  [1]朱梦瑜.面向计算思维的小学Scratch动画制作教学设计与实践研究[D].上海:上海师范大学,2018.

  [2]国务院关于印发新一代人工智能发展规划的通知[J].中华人民共和国国务院公报,2017(22):7-21.

  [3]教育部关于印发《教育信息化2.0行动计划》的通知[J].中华人民共和国教育部公报,2018(4):118-125.

  [4]教育部办公厅关于印发《2019年教育信息化和网络安全工作要点》的通知[J].中华人民共和国教育部公报,2019(增刊1):23-32.

  [5]孙丹,李艳.我国青少年编程教育课程标准探讨[J].开放教育研究,2019,25(5):99-109.

  [6]郁晓华,肖敏,王美玲,等.基于可视化编程的计算思维培养模式研究:兼论信息技术课堂中计算思维的培养[J].远程教育杂志,2017,35(6):12-20.

  [7]杨文正.学习情境链创设视域下的计算思维培养模式[J].现代远程教育研究,2021,33(5):72-81.

  [8]傅骞,解博超,郑娅峰.基于图形化工具的编程教学促进初中生计算思维发展的实证研究[J].电化教育研究,2019,40(4):122-128.

  [9]李宇杰,赵婉斐.基于生活教育理论的高校劳动教育探析[J].思想教育研究,2022(1):138-143.

  [10]叶澜.“生命·实践”教育的信条[N].光明日报,2017-02-21(13).

  [11]许秋璇,杨文正,周琴英.基于“体验学习圈”的计算思维培养模型研究[J].现代教育技术,2020,30(7):97-104.

  [12]孙立会,周丹华.基于Scratch的儿童编程教育教学模式的设计与构建:以小学科学为例[J].电化教育研究,2020,41(6):75-82.