李霞芳
摘要:scratch编程课程在我国已经慢慢融入教学,在许多中小学都已经开设的有编程课程,scratch编程课程现已作为很多必修课程的一部分,给学生提供学习的平台,为加快培养人工智能高端人才奠定基础。初中生对许多新事物都比较感兴趣,学习能力比较强,思维能力活跃,想法比较多,而scratch编程软件采用模块化设计程序,可以将学生的想法展现出来,让现在不懂C语言的孩子利用图形化编程实现相应的效果,从而去培养学生的逻辑思维能力,为学习计算机编程打下基础。
关键词:scratch编程 图形化编程 scratch编程课程 编程思维
1 引言
国务院〔2017〕35号文件《新一代人工智能发展规划》强调,人工智能上升为国家发展战略,人工智能教育和青少年编程已成为中小学教育的必不可少部分。当前人工智能教育、编程教育与机器人教育在社会教育、学校教育与家庭教育受到重视,许多省市的中小学都相应的开设编程课程,但大部分老师都处在学习与探索的阶段,根据学生现有的学习水平去设计相应的课程,在不断的教学探索与实践中去形成相应的教学体系,并应用于实际的教学之中。
经科学家研究表明8-18 岁的孩子是抽象逻辑思维的形成期,如果在孩子的这个成长阶段让他们学习编程,从而锻炼新思维的培养,无论将来他们走向哪个行业对于他们都是有利而无害的。很多的研究表明在中国青少年编程教育目前只有0.96%,而美国却达到了44.8%。
2 编程教育的重要性
进入人工智能时代,计算机编程能力逐渐成为这个时代继写作、阅读、算数等重要基本能力之一。青少年编程作为 STEAM教育实现载体,在我国得到了国家教育部门的政策支持,全国中小学也陆续开展一系列课程,纵观国内外教育形式,青少年学习编程的重要性已显现出来。学习编程可以锻炼逻辑思维、培养专注力、训练青少年创新能力、培育人工智能时代的创新人才、促进其他学科的学习。
3 Scratch编程在教学中的实践
scratch编程在教学中能够用于很多方面,如设计动画、设计游戏、绘制几何图形、解决数学题等,让学生在设计中学习,在游戏中学习,在对于初中阶段的学生学习scratch编程对于他们的学习帮助是不可缺少的。在这里以scratch编程“巡线小车”与scratch编程结合arduino硬件(声控灯)的教学为列,阐述scratch编程在初中教学中的实践与探究。
3.1 scratch编程“巡线小车”的教学实践
在巡线小车的教学中,课程导入部分通过视频让学生了解巡线小车,从而去讲解巡线小车的原理,引入该节课将要学习的内容,通过分析程序执行的效果一步一步的带学生一起分析背景与角色的设计,背景为轨迹线,角色为小车,小车的车身、两颜色探测器与轨迹线的颜色各不相同,其小车图如图3-1所示。
设计程序,当绿旗被点击时,车位于轨迹线上,即车身的颜色碰到轨迹线,车开始向前走;如果轨迹线向左边拐弯则证明左边的颜色探测器会碰到轨迹线,则小车向左转;如果轨迹线向右边拐弯则证明右边的颜色探测器会碰到轨迹线,则小车向右转转;若两个颜色探测器都没有碰到轨迹则小车继续直行。小车轨道直行转弯简图如图3-2所示。
在讲解这个程序中,学生在设计程序时只听老师讲解程序,不去了解程序执行的过程,那学生就回会在抄写程序的现象,知其然不知其所以然。因此在设计程序时应该给学生讲解流程图的绘制与作用。其程序设计流程图如图3-3所示。
学生了解程序设计的流程过后,再带着学生一起设计程序,完成小车巡线程序后学生会发现,当小车巡线到一个点停止时,再次启动程序,执行时会出现误差甚至错误,小车没有按照一开始的点开始执行,这时给学生引入初始化的概念。即点击绿旗则小车总是回到一个固定的位置,从而给学生讲解程序的初始化的作用。其巡线小车程序设计如图3-4所示。
3.2 scratch编程结合arduino硬件(声控灯)的教学实践
单纯的编程许多学生对其的兴趣不是很浓,可以给他们引入一些電子元件(如arduino硬件),可以大大的提升学生的学习兴趣,从而培养他们热爱这门学科的爱好与编程思维,这里以设计声控灯为列。设计声控灯以楼道灯作为参考,问为什么楼道灯在白天不会被点亮呢?作为一个学习驱动性问题引发学生的思考。
设计声控灯,首先让学生了需要的电子元件及其作用,只有了解了原理才能更好的学习知识。
当学生知道主控器、传感器、执行器有什么作用后,再给他们分析声控灯的流程图,以及程序设计,在声控灯完成后引导学生做光控灯与楼道灯(声光同时控制),让学生由浅到深,循序渐进的学习。其声控灯程序设计如图3-5所示,声控灯流程图设计如图3-6。
3.3 教学方法
教学方法在教学中是不可缺少的部分,是教学的灵魂,多样化的教学方法有助于学生对知识的理解与学习。在实践的教学中主要以讲授法、观察法、实践探究法、总结分享法为主。
4 scratch编程在教学中的反思及改进
4.1对于学生听不懂的问题
在编程的教学中,初中的孩子思维已经能够理解一些简单的逻辑,但是大部分学生在小学没有接触过类似的编程教学,在老师讲解简单的问题时,他们理解也是相对困难的,因此在上课时强调学生学会记笔记,不懂的可以记录下来问同学与老师,加强学生记笔记的习惯,有助于学生对问题的理解。
4.2针对学生不能完成任务的问题
对于有的学生是认为老师讲的他会了,到实践操作时却不会;有的学生是老师讲解的时候他啥都懂,到了实践的时候却都忘记了;针对这些问题我采用的是加强学生做笔记的习惯与引导学生帮学生的方式,有助于培养学生发现问题与解决问题的能力,同时帮助不会的学生完成相应的任务。
4.3学生存在单纯的模仿问题
初中的学生虽然思维比较活跃,但是在程序设计上存在模仿的问题,不善于去思考以及不知如何去思考的问题。在这个问题上我采用的是积极引导法,可以将设计的程序效果展示给他们,以及抽取部分同学分析应该怎样设计,给他们理清思路,让他们带着思路去设计程序,从而解决学生存在简单的模仿问题。
5 总结与展望
在scratch编程教学中,应该不断的去探索、去提升,学生对于编程接触的较少,对于学生的研究与课程的设计都应该深思,每个年龄短的孩子对新事物的接受能力不同,在课程设计上应该将学生归为主体,而教师是他们的引路人,给与他们一定的任务、方法与一定的指导,大部分的时间应该留给他们去思考、去实践、去设计。
希望有更多的老师加入编程教育,为培养更多未来的创新型人才奠定基础,为基础教育的孩子们提供更好的学习平台。
参考文献
[1]张阳.青少年编程教育体系研究与实践[J].技术与教育,2019,33(02):24-29.
[2]艾瑞咨询研究院.2018年中国少儿编程行业研究报告[R].北京:艾瑞咨询集团,2018.