欧盟中小学编程课程的发展路径及其启示
2024-03-12孙立会刘俊杰
孙立会 刘俊杰
摘要:随着数字时代的发展,编程技能的重要性已不言而喻,编程课程体系构建成为我国编程教育长效发展的重要一环。欧盟作为全球编程教育发展的策源地,在长期发展过程中出现了“现象级”连锁反应。基于此,文章首先分析了欧盟编程课程的普及化发展进程、目标指向与设置特点。然后,文章总结了欧盟各国编程课程的主要样态,包括形态自立的编程课程、融入学科标准的编程课程、联合创生的跨学科编程课程与政企学研的全民参与的编程课程。最后,文章基于对欧盟编程课程发展路径与主要样态的跟踪描绘,为我国编程教育的切实发展建言献策,包括构建“必修+选修”的拉链式编程课程形式;发展多学科视阈的编程课程体系;协同政府、企业、学校构建贯通衔接的编程教育生态;重视不同学科教师编程能力的专业化培训。文章通过研究欧盟的编程课程发展,旨在为我国中小学编程教育发展提供启示与借鉴。
关键词:欧盟;中小学;编程课程;课程样态
【中图分类号】G40-057 【文献标识码】A 【论文编号】1009—8097(2024)02—0023—10 【DOI】10.3969/j.issn.1009-8097.2024.02.003
编程教育学校化可追溯至美国普渡大学于1962年成立的世界第一个计算机科学系,这一时期的培养主要聚焦于高等教育阶段[1]。但随着数字化技术与社会各行业融合程度的深化,编程已然成为新时代每个人都应掌握的“通用”技能,只在高等教育阶段讲授编程显然不能满足时代发展的需求。因此,编程教育在半个多世纪的发展过程中,逐渐从大学向中小学阶段渗透并逐渐普及,呈现出低龄化培养的特征。例如,美国、英国、欧盟各国在新一轮课程改革中,从诸多层面推动中小学编程教育的发展,并不断下调编程课程实施的年段。我国教育部门虽同样重视义务教育阶段编程教育的普及,但在编程课程设计与编程教育实践落实等方面尚未形成一体化衔接培养体系。因此,为了解决当前我国编程教育发展面临的问题,有必要汲取国际范围内的优秀编程教育实践经验。其中,欧盟作为全球编程教育发展的策源地受到了广泛关注,其编程教育发展出现的“现象级”连锁反应主要得益于国家政策的支持和各联盟国之间的交互影响。具体而言,欧盟在顶层设计层面高度重视编程教育,为其规模化发展提供了政策支持和方向指引:一方面,欧盟委员会于2016年将编程作为未来公民应具备的二十一项数字能力之一纳入《公民数字能力框架2.0》(DigComp 2.0:The Digital Competence Framework for Citizens);另一方面,具有悠久编程教育历史的欧盟国家将编程纳入基础教育课程改革,带动其他欧盟国家的课程改革动向,从而逐步形成大规模特色化的编程课程样态。欧盟委员会联合研究中心(Joint Research Centre of the European Commission)于2022年发布的调查报告显示,已有27个欧盟国家将编程融入义务教育课程体系,这表明欧盟编程教育在基础教育阶段已基本实现普及化的全覆盖[2]。考虑到课程是育人的重要载体,编程教育若正式进入教育体系,也必将从课程的视阈切入。然而,无论是变革与编程教育直接相关的信息科技课程或间接相关的学科课程,还是变革交叉融通的编程活动,均需立足于课程的视角进行深度论证并找寻到各种路径发展的可行性证据。因此,本研究尝试对欧盟各国编程课程体系的发展路径进行跟踪,并对其编程课程样态进行同步描绘,进一步挖掘欧盟基础教育阶段编程课程体系构建的策略,以期为我国中小学编程教育发展提供启示与借鉴。
一 欧盟各国中小学编程课程的发展路径
在日益数字化的社会背景下,欧盟各国洞悉编程课程裹挟的数字能力对学生适应未来社会的意义,着力推动编程教育从高等教育向基础教育延伸。此外,计算思维内涵的确定为编程课程提供了更明确的目标指向,计算思维的综合性与跨学科性决定其不仅能解决计算机科学领域的问题,还能“赋能”和“增值”其他学科。因此,欧盟各国在不同教育阶段积极探索,探寻编程与学科融合的可能路径,旨在将编程课程安置于基础教育阶段各学科的教学体系中。
1 编程课程的普及化发展
20世纪60年代,美国作为世界信息化浪潮的引领者和较早在高等教育阶段开展编程教学的国家之一,却并未深耕中小学编程教育的发展,导致这一“星星之火”并未形成蔓延之势[3]。反观欧盟各国,其在面对社会信息化与计算机化裹挟而来的工业界程序化危机时迅速意识到编程教育的重要性,把握时机并不断调整国家教育政策,率先将大学计算机课程推广至中小学阶段,为欧盟编程教育普及化奠定了基础。例如,德国、法国在教育部门的支持下,将涉及编程的计算机科学课程延伸至中学阶段,由此带动了其他联盟国对编程的关注,并“涌现”了诸多有关编程课程改革的政策。20世纪80~90年代,欧盟中小学编程教育的发展规模随着计算机的普及而逐渐扩大;20世纪90年代末,《歐洲计算机驾驶执照计划》发布,该计划虽然旨在提升欧洲公民操作办公应用程序的能力,但人们开始意识到计算机在未来生活中必不可缺。自此,随着社会数字程度的加深,编程教育更是进一步向教育体系渗透。
21世纪初,互联网的普及使欧盟各国对编程人才的需求激增,再次掀起了各国在国家政策与顶层设计层面推广编程教育的热潮。2010年,欧盟发布《欧洲数字议程》(Digital Agenda for Europe),将编程和计算机科学教育纳入数字技术中,进一步推动了编程教育的普及。2013年,欧洲信息学和计算机协会呼吁变革传统的中小学课程结构,为编程课程腾出一席之地。2014年,尚未脱欧的英国规定小学一年级就要“强制性”学习编程,这标志着欧盟新一轮编程课程改革正式拉开帷幕。之后,克罗地亚、马耳他等16个国家也制定了编程课程改革的政策,将编程纳入国家或地方级别的课程[4]。例如,马耳他数字化学习部门发布《计算作为核心权力框架》(Computing as A Core Entitlement Framework),指出要在幼儿园至十一年级引入编程内容;奥地利要求学生从幼儿园开始学习编程基础概念,小学三年级开始学习计算机编程[5]。编程与计算思维教育引入中小学阶段已成为欧盟国家计算机课程改革的主要趋势,截至2022年,已有20多个欧盟国家将编程与计算思维写入了国家或地方课程标准。
2 编程课程的目标指向
随着智能技术的发展,编程课程的教学目标陆续从掌握基础的计算机操作,转变为掌握适应社会发展所必需的能力。2012年,英国皇家学会发布《关闭还是重启:英国学校计算的前进之路》(Shutdown or Restart: The Way Forward for Computing in UK Schools)报告,指出目前的计算课程主要讲授的是基本的数字处理技能,学生并未实现所期待的思维与技能增长[6]。教育当局者也意识到在复杂多变的数字化世界,学生必须具备与智能系统交互的知识和技能,以及面向未来社会的数字能力。正如经济合作与发展组织所述:我们必须要比过去更加重视数字素养、高阶思维能力的发展[7]。而计算思维内涵的明晰为编程课程发展提供了明确的目标指向。实际上,早在1980年,西蒙·派珀特就在其著作《头脑风暴:兒童、计算机及充满活力的创意》(Mindstorms: Children, Computers, and Powerful Ideas)中提出“计算思维”一词,指在编程实践中形成的心理技能,但此时仅应用于计算机科学领域[8]。2006年,周以真[9]以其独特视角洞见了计算思维的价值内涵,指出其涵盖问题解决、系统设计以及理解人类行为等一系列思维活动。此后,计算思维作为一种通用“思维”技能被推广至各个学科领域。
至此,世界也掀起了指向计算思维发展的中小学编程课程改革动向,为中小学编程课程普及化发展提供了新的着力点。例如,法国、葡萄牙等国家在课程标准中明确将计算思维作为编程课程的培养目标,并将编程作为普通学科学习的基础。虽然欧盟部分国家的政策中没有明确提及“计算思维”,但均出现了关于计算思维各维度技能的表述[10]。例如,爱沙尼亚的技术素养与算法思维;瑞典的数字能力与算法思维;瑞士、克罗地亚的分析性思维与创造性解决问题的能力。同时,欧盟各国还达成了低年段孕育学生思维、高年段培养学生能力的共识,近三分之二的欧盟国家希望通过编程课程提高学生适应未来数字化生活的能力和就业能力。据此,本研究梳理并总结了欧盟国家编程课程的培养目标指向,如表1所示。
3 编程课程的设置特点
欧盟各国的编程课程以不同形式存在于教育体系中。随着编程教育重要性的明确,部分国家设置了独立的编程课程。2016年,欧盟校园网(European Schoolnet)的调查显示:欧盟已有12个国家在地区或学校设立了编程/计算(Programming/Computing)课程,但大多数国家是将编程作为信息学(Informatic)/信息技术(Information Technology)/计算机科学(Computer Science)课程的一部分。欧盟部分国家并未设置独立的计算机科学类课程,其编程课程主要以学科融合的形式存在。例如,瑞典、法国的数学学科的培养目标包括编程技能;比利时要求学生使用编程建立解决数学、地理问题的模型,真正体现“编码助学”的教育理念。同时,受传统课程体系的影响,还有欧盟部分国家将编程作为一种跨学科活动,在基础教育阶段所有的学科中讲授,如西班牙的教育指南强调编程属于交叉课程,所有教师都要肩负培养学生编程技能的责任。总而言之,与特定学科融合的编程课程和跨学科整合的编程课程为欧盟各国发展编程教育提供了新思路,甚至在全球范围内都产生了深远影响。
此外,编程课程在中小学的课程性质界定也是欧盟各国的核心关切,对于如何将编程安置于学校课程中,欧盟各国给出了不同回应。例如,斯洛伐克、波兰等国家大胆探索,彻底改变原有的编程课程体系,在义务教育阶段实行编程“必修化”政策。匈牙利、葡萄牙等国则在改革之初保持观望态度,将编程作为初中生的选修科目,到高中阶段则采用“必修+选修”结合的形式,为技术类或有特殊天分的拔尖人才提供必修编程课程,并作为高等教育入学选拔的参考。大多数欧盟国家采用“小学必修+中学选修”结合的形式,如西班牙的编程课程在小学六年级之前属于必修课程,初中则纳入选修行列;克罗地亚编程课程在小学五、六年级属于必修课,其他年级则由学校自主选择是否开设。同时,编程作为一种专业技能在职业教育中的地位不可忽视,欧盟高中职业教育通常会开展必修的编程课程。编程强制性必修的欧盟国家在初高中阶段会对编程课程进行普通和职业性质的教育分层、分流,如捷克、保加利亚等国家的中等职业学校会提供普通的编程选修课程与职业化的编程必修课程。据此,本研究梳理了欧盟国家编程课程的主要特征,如表2所示。
二 欧盟各国中小学编程课程的主要样态
欧盟各国的教育体系与政策落实存在差异,致使各国编程课程以不同的形式存在,进而形成不同的编程课程样态。具体而言,欧盟主要包括一体化衔接的独立编程课程体系、与基础教育阶段特定学科内容融合的编程课程、“联合”所有学科的跨学科编程课程,以及政府、企业、学校、研究机构共同参与的编程项目。
1 形态自立:“独当一面”的编程课程体系
以独立形态存在的编程课程多集中于具备计算机科学教育历史的国家,这些国家立足于高等教育阶段的计算机科学课程并向基础教育阶段延伸,以打造一体化衔接的编程课程体系。其中,德国自20世纪70年代初就在高中引入计算机科学课程,是较早普及编程教育的国家之一[11]。历经半个多世纪的探索,如今德国在课程形态与人才培养方面呈现出独当一面的体系架构。在课程形态上,德国以独立的计算机科学课程讲授编程。同时,德国的初中阶段推出了“三轨制”的课程体系,包括“学术轨道”“综合轨道”“职业轨道”:学术轨道和综合轨道旨在为学生提供更广泛的综合性教育,编程课程通常以选修形式开展,讲授基本的编程知识和计算机操作,但面向对编程有特殊兴趣及天赋的学生,会开设必修的编程课程;职业轨道旨在培养学生掌握特定领域和职业的技能,学生还可以参加“学徒制”来获得编程领域的职业资格证书。相比之下,波兰编程教育发展时间虽不长,但已初步形成“大规模培养”与“小规模拔尖”相结合的培养体系:波兰的“大规模培养”面向基础教育阶段,其开设了独立的信息学课程,并要求所有年级每周至少开展一小时的编程活动;“小规模拔尖”则主要依赖于“信息技术锦标赛中心项目”,该项目由欧盟和欧洲区域发展基金会共同举办,旨在培养中小学生的编程能力[12]。“信息技术锦标赛中心项目”涉及波兰全国各地的652所学校,该项目会从参与学校中挑选具有编程天赋的小学4~6年级、初中7~8年级学生进行培养,以编程竞赛的形式促进学生计算思维与算法能力的提升。简言之,波兰和德国根据学生的兴趣与天赋打造以“必修+选修”相结合的编程课程培养体系,同时其培养分流机制涵盖了编程类人才输出的各种可能路径,进而形成了独当一面的人才培养体系。
2 学科融合:“融会贯通”的编程思想理念
作为“人造系统”,计算机的内部逻辑运算和问题解决方式与数学、工程学有异曲同工之妙,而编程作为“外在”计算机系统的“内在”表达方式,更是离不开数学、工程学等专业知识。欧盟的多个国家也早已洞悉编程与基础教育阶段特定学科间的联系,并从政策与实践的双重视角促进编程与特定学科的培养目标相融合。其中,芬兰作为当前编程课程整合度最高的国家,早已将编程融入中小学阶段的数学、劳动教育、手工学科,促进编程与学科的协同发展[13]。例如,芬兰1~12年级的数学课程标准规定了编程教育的培养目标,从运用编程学习简单数学知识逐步过渡到运用算法编写程序辅助高难度数学概念的学习[14]。芬兰的劳动教育和手工课程,要求学生利用编程技术赋予手工制作的物品自动化交互的功能。此外,瑞典也是将编程与特定学科融合的代表国家。2015年,瑞典政府敦促国家教育局重新编制基础教育阶段的课程标准,明确要在各学科中引入编程内容,由此瑞典的数学与公民学课程标准也融入了编程目标,要求学生在不同的编程环境中编写程序以解决数学问题[15],并掌握社交平台中的媒体信息。归根结底,以芬兰和瑞典为代表的这种融合都是建立在编程与特定学科秉持相同理念的基础之上,即这些学科的问题解决方式、算法逻辑、建模分析原理都与编程一致。在此基础上,融入特定学科的编程课程,超越了单一的学科学习与计算机编码实践,能培养学生解决不同学科领域问题的能力;而融入编程的学科课程能紧跟时代发展并与之接轨,甚至可以借助编程思维“反哺”学科课程的学习。
3 跨学科整合:“联合创生”的编程共同语言
编程学习具有“反赋能”(Reflexive)的作用,即将编程与其他领域逻辑知识相结合进行学习要比单独学习每个领域更容易[16],因此西蒙·派珀特终其一生致力于将“编程助学”的思想应用于学科教学实践。究其根本,利用编程解决学科问题既能提高学科的学习成效,又能将抽象的编程知识具象化。因此,跨学科形式也是提高学生编程技能的可能路径,而欧盟各国也遵循这种路径开展了不同程度的整合。实际上,以跨学科形式将编程融入基础教育课程是芬兰一直以来的教育传统。2014年,芬兰基础教育国家核心课程指出要以培养学生的横向能力作为所有课程的共同目标,这也成为跨学科整合编程的出发点。基于此,芬兰采用“现象式学习”方式开展编程教学,让学生通过与现象的具身交互深化对不同学科知识的理解。马耳他于2018年颁布小学1~6年级《学习成果框架》(Learning Outcomes Framework),其中包括必修的编程跨学科主题活动,并指出编程技能不仅仅是某些学科的专属教学内容,也是需要所有学科共同培养的技能。此外,德国州教育部于2016年发布《教育计划2016》(Bildungspl?ne 2016)报告,要求基础教育阶段的所有学科都要纳入编程知识,如在自然科学与技术学科中,将编码、算法原理作為课程的一部分;在数学科目中,要求学生通过编程完成数据提取与分析。实际上,跨学科编程课程是将编程作为一种“共同语言”在不同学科中讲授。编程具备的强大计算能力是各学科都需要的,如能解决数学学科中的计算问题;能计算物理中物体运动的轨迹;能分析语文学科中大量文本数据之间的情感关系。由此可见,以跨学科方式讲授的编程语言,能让学生深入理解编程在不同学科领域中的共通之处,从而打破只在信息科技课程讲授编程的局限性。同时,编程与所有学科课程的“联合”能增加学生学习编程的机会,对学校编程课程体系而言也是一种“颠覆性”的创生。
4 全民参与:“政企学研”支持的编程项目
编程进入中小学课堂已成为欧盟甚至世界大多数国家深化编程课程改革的首要选择,但个别国家的编程课程改革尚未上升到国家课程的顶层设计层面,而是作为项目式活动在中小学课堂内外开展,意大利、爱沙尼亚便属于此类国家。意大利官方虽未将编程与计算思维纳入国家课程标准中,但其教育部与地方学校层面仍支持各种编程活动的开展,欧盟代码周(Code Week)便是意大利全国范围内流行的大规模编程活动,该活动旨在帮助学生掌握计算思维、编程、机器人技能[17]。意大利于2014年开始参与欧盟代码周,开展编程教育的扫盲运动,并于2021年实现普及化的全覆盖。此外,欧盟代码周还为意大利教师提供免费的课程培训,助力教师将编程融入音乐、语言学学科。受益于欧盟代码周项目,意大利的编程课程体系在教育部门及学校教师的协同下蓬勃发展。爱沙尼亚虽然并未设立独立编程课程,也未明确在哪些学科内融入编程,但其编程活动的普及化程度非常高,这是因为爱沙尼亚中小学编程课程依托于一项编程项目——Proge Tiger,该项目旨在提升中小学生运用计算思维解决实践问题的能力[18]。该项目由爱沙尼亚教育研究部与教育信息技术基金会于2012年共同发起,多家教育科技公司参与其中,共同服务爱沙尼亚的中小学课堂。Proge Tiger项目为师生提供了详细的学习内容,其中小学阶段以图形化与机器人编程为主,要求学生在不同学科(音乐、数学、物理)中开展编程活动;而在初高中与职业教育阶段,学生可以选择学习编程语言(如Python、JavaScript)、3D图形、游戏制作、网页制作等,为未来计算机职业选择与发展做准备[19]。Proge Tiger项目为在职教师提供全方位的教师培训和详细的教学指南,以便教师能在课堂中迅速展开编程教学[20]。爱沙尼亚编程课程在政府组织、社会团体、研究机构以及学校的协同配合下得以有序开展。由此可见,编程教育的全面落地和长效发展需要政府、企业、学校、研究机构的广泛支持与协同参与。
三 对我国中小学编程课程体系构建的启示
通过对欧盟各国编程课程的发展路径和课程主要样态进行梳理与描绘,本研究结合我国编程教育发展的问题与诉求,从编程人才培养体系完善、编程课程发展理念革新、编程教育生态构建和教师编程能力专业化培训方面提出针对性建议,以促进我国编程教育的长效发展。
1 探索“必修+选修”拉链式课程,满足天赋型与兴趣型学生的学习需求
我国义务教育阶段编程教育的“入口”和“出口”问题同样值得深思。习近平总书记在党的二十大报告中明确指出,要统筹推进教育、科技、人才“三位一体”,着力造就拔尖创新人才[21]。因此,学校编程课程体系也应当考虑全方位育人的目标,满足天赋型与兴趣型学生的学习需求,一方面为国家培养专业化的编程类拔尖创新人才,另一方面培养全民普及的计算思维素养:首先,可以参考欧盟国家“必修+选修”结合的编程课程形式,重视和稳固信息科技课程在小学阶段的必修课程地位,开展必修的编程知识普及化课程;而在初中和高中阶段开展选修的专业化编程技能拔尖课程。其次,在崇尚编程“育思维”的素养教育时代,我们也不应忽视编程职业技能的发展路径。正如德国教育家卡尔·雅斯贝尔斯所说:“真正的教育不是期望每个人都成为富有真知灼见的思想家,教育的过程是让受教育者在实践中自我操练、自我学习、自我成长。”因此,可以在信息科技课程中融入以编程职业技能培养为导向的内容,为学生提供学术路径和职业路径两种选择。同时,还可以提供与职业技能有关的培训项目,为学生深入了解信息科技和编程领域的未来发展提供机会。最后,对于天赋型的编程类拔尖创新人才,更应做好教学分流举措,提供更具个性化的制度保障。具体而言,可以参考波兰的“小规模拔尖”项目,突破“循规蹈矩”的传统教育制度束缚,让学生的编程天赋得以释放并使其在自己擅长的领域内不断成长。综上,在我国中高考分流的教育视域下,编程教育发展的关键步骤就在于完善编程教育职业化分流机制、打造贯通衔接式的编程人才培养课程体系。
2 发展多学科视阈编程课程体系,推进编程与传统学科课程融合
中小学编程教育已成为各国基础教育发展的着力点。为此,我国不断出台发展编程教育的相关政策,2017年国务院印发《关于新一代人工智能发展规划的通知》,明确提出小学阶段要逐步推广编程课程,这标志着编程教育正式进入引起国家层面的关注[22]。2022年,教育部颁布新修订的义务教育阶段“信息科技”课程标准,虽然将计算思维规定为四大核心素养之一,却并未提及编程[23]。可见,当前的首要任务是,国家教育部门需从顶层设计层面制定明确的政策框架,落实编程教育在信息科技类课程与学校课程体系中的重要地位,并在基础教育各年段的课程计划中编制合适的编程活动。其次,编程教育和计算思维的综合性与数学思维、科学中的工程技术领域紧密相连,这决定了编程教育的发展不能仅局限于“信息科技”学科这座“孤岛”,因此教育部门应从理念上进行创新,明确编程教育培养需要义务教育阶段多学科的协同,大力推广融合传统学科课程的“编程+X”教学模式。最后,考虑到学生从解决问题的实践过程中所获得的知识才最有价值,而编程与各学科教学内容的融合不仅为学生提供了“具象化”抽象编程概念的实践场所,还为学生编程能力与学科学习的协同发展、共生互惠提供了机会。因此,教育部门应联合高等院校、中小学院校重点突破如何将编程课程“安置”到所有学科内容中的难题,开发出编程内容与学科內容有机融合的贯通式教材。总而言之,无论从哪种角度出发,都应当推广“编程+X”学科的发展。
3 打破编程课程校本化开发的局限,构筑校企协同的编程教育新生态
长期有序发展的编程教育生态构建需要国家、学校和社会各方的共同配合。欧盟各国编程课程体系大多设有专业的编程教育委员会或非营利性组织,以起到宏观统筹与弥足调节编程教育发展方向的作用。同时,部分编程教育企业也会参与到编程科技平台开发和学校编程课程研发中,为学校编程教育的发展进行有益补充,覆盖爱沙尼亚全国的Proge Tiger项目就给出了最有力的证明。考虑到目前我国的编程教育课程体系发展尚未成熟,并且学校的编程教材较为零碎,因此可以:首先,编程教育企业可以参与到中小学院校的编程教材、课程开发中,借鉴国际上编程教育实践的优秀经验,解决我国中小学院校校本课程体系的滞后性问题,同时根据学校各年段的教育目标和课程目标,开发一体化衔接的编程课程体系和编程实践计划。其次,中小学院校可以与企业通力合作,形成“以企带校,校企协同”的特色发展模式,尤其是随着国家“双减”政策的落实,促使学科类培训行业纷纷向编程教育行业转型,其中不乏已形成完备编程课程体系的企业。这类企业可以为办学条件不足的学校提供课程支持和编程工具支持,包括编程软件、在线学习资源等;学校则可以为企业提供编程课程实践的场所,根据教学结果反馈进一步完善编程课程。最后,企业可以定期为中小学生提供参与编程实践项目的机会,由企业员工进行辅导,帮助学生应用编程知识来解决实际问题。总而言之,编程教育企业作为培养国家基础教育科技人才、拔尖创新人才的重要途径,应承担相应的使命与担当,为我国编程教育的发展贡献力量。
4 重视教师编程能力专业化培训,完善教学材料支撑的配套设施
多学科协同发展编程不仅对学科内容融合提出了更高的要求,也对所有学科教师的数字素养能力和编程能力提出了新的要求。我国教育部门同样指出,为了更好地适应智能时代的教学,教师数字素养的提升迫在眉睫[24]。因此,所有学科教师首先要完成教学理念上的转变,明晰自己肩负着培养学生编程能力的责任,这是编程教学能否落实的基础。其次,“用编程学”和“编程助学”的前提是教师在课堂中要学会“用编程的方式教”,因此学校和教育部门应多方协作制定教师专业能力培训的计划,帮助教师学会“用编程教”;还要为教师提供教学工具与配套设施的支持,扫除编程活动实施的一切障碍。此外,教师在编程教学中不应拘泥于单一的编程形式,应积极探索计算机化编程方式与非计算机化编程方式融合的编程教学模式[25]。再次,编程与学科内容的融合对学科教师的能力与教学法也提出了更高的要求,教师要避免学生对编程语句的机械记忆,通过教学活动内容帮助学生“表达”在脑海中建立的算法逻辑与运行步骤。最后,构建编程教学数字化资源共享平台,不仅可以为教师提供优质的课程资源、教学案例、课程材料和多种资源组合使用的可能,还可以作为教师之间相互讨论教学策略、教学实践方案的场所,从而促进编程教育领域内的合作共享,进一步提高编程教学质量。总之,完善教师专业化能力培训机制,也是我国编程教育发展和推广的关键之所在。
參考文献
[1]孙立会,胡琳琳.是什么影响了小学生的计算思维——一项基于五省市小学生的横向研究[J].中国电化教育,2021,(7):52-61.
[2]Bocconi S, Chioccariello A, Kampylis P, et al. Reviewing computational thinking in compulsory education: State of play and practices from computing education[R]. Luxembourg: Publications Office of the European Union, 2022:31-32.
[3]Hirsh-Pasek K, Zosh J M, Golinkoff R M, et al. Putting education in “educational” apps: Lessons from the science of learning[J]. Psychological Science in the Public Interest: A Journal of the American Psychological Society, 2015,(1):3-34.
[4]Balanskat A, Engelhardt K. Computing our future: Computer programming and coding-priorities, school curricula and initiatives across Europe[R]. Brussels: European Schoolnet, 2015:23-26.
[5]Bocconi S, Chioccariello A, Dettori G, et al. Developing computational thinking in compulsory education: Implications for policy and practice[R]. Luxembourg: Publications Office of the European Union, 2016:29-30.
[6]The Royal Academy of Engineering. Shut down or restart? The way forward for computing in UK schools[OL].
[7]OECD. Skills for a digital world[OL].
[8]Papert S. Mindstorms: Children, computers, and powerful ideas[M]. New York: Basic Books, 1980:212-213.
[9]Wing J M. Computational thinking[J]. Communications of the ACM, 2006,(3),33-35.
[10]Bocconi S, Chioccariello A, Earp J. The Nordic approach to introducing computational thinking and programming in compulsory education[R]. Brussels: European Schoolnet, 2018:7-16.
[11]Knobelsdorf M, Magenheim J, Brinda T, et al. Computer science education in North-Rhine Westphalia, Germany—A case study[J]. ACM Transactions on Computing Education, 2015,(2):1-22.
[12]Politechnika ?ódzka. Centrum mistrzostwa informatycznego[OL].
[13]Korhonen T, Salo L, Laakso N, et al. Finnish teachers as adopters of educational innovation: Perceptions of programming as a new part of the curriculum[J]. Computer Science Education, 2023,(1):94-116.
[14]Heintz F, Mannila L, Farnqvist T. A review of models for introducing computational thinking, computer science and computing in K-12 education[A]. 2016 IEEE Frontiers in Education Conference[C]. Erie, PA, USA: IEEE, 2016:1-9.
[15]Stigberg H, Stigberg S. Teaching programming and mathematics in practice: A case study from a Swedish primary school[J]. Policy Futures in Education, 2020,(4):483-496.
[16]Sun L, Liu J. Different programming approaches on primary students computational thinking: A multifactorial chain mediation effect[J]. Educational Technology Research and Development, 2023:1-28.
[17]Moreno-León J, Robles G. The Europe Code Week (CodeEU) initiative shaping the skills of future engineers[A]. 2015 IEEE Global Engineering Education Conference[C]. Tallinn, Estonia: IEEE, 2015:561-566.
[18]Merle Rosman. Proge Tiger[OL].
[19]Education Estonia. Proge Tiger—Estonian way to create interest in technology[OL].
[20]Hundred. Proge Tiger programme[OL].
[21]習近平.高举中国特色社会主义伟大旗帜为全面建设社会主义现代化国家而团结奋斗——在中国共产党第二十次全国代表大会上的报告[M].北京:人民出版社,2022:10-11.
[22]国务院.国务院关于印发新一代人工智能发展规划的通知[OL].
[23]教育部.教育部关于印发义务教育课程方案和课程标准(2022年版)的通知[OL].
[24]教育部.教育系统着力提升教师数字素养——迎接数字化掌握新技能[OL].
[25]孙立会.“非计算机化”儿童编程教育教学模式的构建与应用[J].现代教育技术,2023,(2):52-60.
The Development Path of Programming Curricula in Primary and Secondary Schools in the European Union and Its Implications
Abstract: With the development of digital era, the importance of paragramming skills has been self-evident important, but the construction of programming curriculum system is the main is the main crux of the long-term development of programming education in our country. As the source of the development of global programming education, the EU has shown a “phenomenal” chain reaction in the long-term development. Based on this, the paper firstly analyzed the popularization development process, goal orientation, and setting characteristics of programming curricula in the EU. Then, the main patterns of programming curricula in the EU countries were summarized, which included morphologically independent programming courses, programming courses incorporating disciplinary standards, co-created interdisciplinary programming courses, and government-enterprise-academia-research programming courses with participation of the whole people. Finally, based on the tracking and description of the development path and main patterns of programming courses in the EU, this paper was expected to provide suggestions for Chinas programming education practical development, including the construction of “compulsory + elective” zipper programming courses form, the development of programming course systems withmulti-disciplinary perspective, the construction of a consistent programming education ecology in collaboration with the government, enterprises, and schools, and the emphasis on the professional training of programming ability of teachers in different disciplines. Through studying the development of programming curriculum in EU, this paper was expected to provide enlightenment and reference for the development of programming education in Chinese primary and secondary schools.
Keywords: EU; primary and secondary schools; programming curriculum; course format