APP下载

观察:从盲目到深刻
——编程教学中培养低年级学生观察力的有效策略

2023-03-24江苏省南京市夫子庙小学陈思思

小学教学研究 2023年8期
关键词:指令编程笔者

江苏省南京市夫子庙小学 陈思思

一、研究的缘起

2017年国务院印发《新一代人工智能发展规划》,其中明确指出人工智能成为国际竞争的新焦点,在中小学阶段设置人工智能相关课程、逐步推广编程教育。同时,随着移动应用市场的迅速发展,物联网也逐渐兴起,编程已逐渐被视为未来的必备能力。此时,在低年级开展编程教学是新的尝试,也是新的挑战。近年来,学校开设了校本低年级编程课程“小小编程家”,课程以发展学生的计算思维、开拓新的能力素养为目标,为学生在中高年级学习新技术、形成创新能力蓄力。在课程的实施中,相对于较长时间的高年级编程教学,低年级编程教学在实施中“心有余而力不足”,因而寻找低年级学生编程学习问题的症结所在、探求合理有效的解决方案势在必行。低年级学生学习编程必然和高年级学生存在差异,教师从学生的学情特点中找出问题本质,才能更好地实践低年级的编程教学,引领学生能力的成长和核心素养的养成。

二、探索的问题

低年级编程学习以解决局部问题或整体问题为主,培养学生用编写程序的方法个性化、创造性地解决问题的能力。随着在教学中的“摸爬滚打”,教师可以通过以下几个典型的课堂教学片段进行反思,找出核心问题。

(一)到底看什么——观察目的不明确

这个问题发生在第6节课。在一道练习中,程序的主人公需要通过运行学生搭建的移动指令和动作指令在一条环形的路上摘得三颗松果并且种植一棵松树。面对这道题,大部分学生通过观察,会选择向南的路线,这样既完成了动作指令的任务,又能使用较少的移动指令,程序运行效率高。可是,仍有个别学生选择较长的路线。笔者对其中一个学生展开了询问:“松鼠有几条路线可以走?”学生回答:“两条。”笔者接着问:“你为什么选择这条路线?”学生回答:“这条路线好走。”好走?笔者更加疑惑了,他为什么说好走?仔细观察图片后,笔者发现原来他选择的路线中有一大段没有松果和松树(可能是他认为的通畅的原因),可以直接使用移动指令,他点点头肯定了笔者的说法。接着,笔者又询问了另一个出错的学生,发现他没有仔细地读题。

以上现象说明学生的观察目的不明确,没有目的性的观察在低年级学生身上容易出现观察的盲目和遗漏。教师在实际教学中可以采用个别指导的方法:第一,引导学生观察发现两种路线,并对比两条路线的不同;第二,通过对比学生的正误练习,引导学生理解程序运行效率的重要性,再和学生共同总结,明确观察目的后再进行观察。

(二)试试用手看——观察方法的缺乏

第9课练习4需要使用移动指令编写程序,让主人公画两个相接的正方形,形成一个长方形,起点在左侧正方形的左上角。在学生明确观察目的、关注到主人公的起点和方向后,教师以问题“有几个正方形,先画左边还是右边”为导向指引学生观察后再思考。学生开始自主尝试,笔者观察着他们。这时,一个学生举手了:“老师,我看不明白。”他在说话的同时运行了他的程序:一些线段没有画而另一些线段却重复了。于是,笔者向全班演示了他的问题。“我也这样,你画出来了吗?”“还没有。”大家窃窃私语。“我画出来了!”一个学生高高举起他的手,带着熠熠生辉的目光骄傲地说。在大家的赞叹声中,笔者问他:“很多同学在画的时候线条很复杂,看不明白,你有什么好办法?”他伸出左手食指说:“因为右手要用鼠标,所以我用这只手,一边指着一边做!”“真是个好办法,这样就能看清楚下一步的起点了!”在笔者的激励下,学生纷纷开动另一只手加入练习中。渐渐地,笔者听到了更多“成功了”的声音。

学生的好方法说明了一个问题——观察,光用眼睛看是不全面的。题目的难点在于“观察的顺序性”,线条越多,指明的方向就越复杂。为了突破明确方向的难题,除了用眼睛去看屏幕,教师还要指导学生用手去“看”,甚至是用身体的其他部分去看。

(三)去看,认真地看——观察深度的不足

第11课有这样一道题,使用循环指令编写程序让主人公通过这样 “_______” 的路线到达目标位置。“看!这样的路线有什么特点?谁来画一画,再说一说?”很多学生发现“就像上楼梯一样”,真是个很形象的说法!笔者继续问:“还有什么发现?”但学生却闪过疑惑的眼神。是图片不够具象吗? “那么先自己试着完成,看看有什么新发现。” 几分钟后,一个学生说:“都是向东向北。”笔者接着引导:“大家同意吗?去看看这段程序,认真地看!组里的小伙伴说说你的发现!”讨论的氛围会让学生打开思路。“谁愿意来和大家说说看?”其间,师生多次重复提问和回答。“老师准备了一首循环指令拍手歌,跟着老师一起说!循环指令怎么用?找相同、分分组、最后一起数一数。”学生拍起了小手,从不熟练到熟练,认真地唱着。最后,笔者说:“你学会了吗?再考考大家,一起来对比这道题‘______’。”

观察的深度要以观察的积累量为基础,也就是量变引起质变。教师指导观察的方法可以分为五个层次:第一,运用具象直观的方法让学生有形象的表达;第二,在学生自主尝试的过程中,引导学生将具象的内容转化为抽象的思考;第三,发挥合作学习的力量,多次重复加深对问题的理解;第四,总结解决问题的一般方法和规律;第五,实践运用规律和方法去解决类似的问题。

综合以上问题,低年级学生在编程学习中需要解决的首要问题是“看”,也就是观察。什么是观察、如何观察、如何更全面地观察?这些问题十分重要。而观察后能够有所发现、发现后能够表达、表达后能够创造性地解决——这些也是学生应具备的重要能力。低年级学生通过编程的学习进一步养成的良好的观察能力,将是他们今后学习与生活的有效铺垫。

三、培养的策略

低年级学生由于学习能力较弱、不善于观察导致知识与动机的不匹配,他们更需要教师在学习方法上的指导。通过实践研究,低年级学生完成编程任务时容易“沉浸”,这是针对儿童设计的编程课程的特点。其优点毋庸置疑,但在学习中对观察技能的训练也很重要。

(一)创设观察情境,明确观察任务

编程中观察的目的是正确认识事物。抓住事物问题的特点,是正确观察事物的关键。对于低年级学生来说,观察时,教师要注意搭建有吸引力的平台,引导学生发现“观察点”。教师在教学中可创设宽松、和谐的情境,开展一些生动、活泼、学生喜闻乐见的活动,如“赛一赛”游戏、文娱类活动、智力类活动等,让学生感受到问题的有趣,产生利用所学解决问题的愿望,让其身心愉悦、毫无负担地进入观察情境。学生通过初步观察思考如何解决问题,再通过教师细化问题的引导深入观察思考。教师要注意训练学生用准确的语言去描绘所观察事物的主要特征,进而围绕“观察点”展开更为丰富的语言表达。学生在观察情境中畅所欲言,充分表达对观察任务的理解,通过自我表述、他人分享、教师提问等方式明确任务要求,把握观察的目的,从而避免观察的盲目性。

(二)具化问题导向,多感官优化观察

教师可以通过明确任务要求、把观察的任务具体化、以兴趣或问题为导向,引发学生主动思考,为学生从细节出发到整体性思考提供路径。低年级学生的自主观察能力还很差,因此,教师在指导学生观察时,方法应灵活多样,使观察的问题尽可能具象化、有明确的导向性并且贴近学生生活。教师可引导学生在课堂中利用看、听、说、唱、触、跳等多种方法恰当地对问题进行全面、细致、有序的观察和理解。在解决问题的过程中,学生多感官配合能让观察更细致,能够发现明显和隐藏的细节,减少差错。对于低年级学生来说,将多感官配合到编程的学习中很有必要。同时,教师还要引导学生再配合具象化的板书来梳理不同的问题,总结经验教训,开拓思维。

(三)个别结合合作,开拓认知角度

个人的学习是片面的,知识的火花需要碰撞。当学生进入观察过程后,教师要进行针对性的、个性化的观察指导。在观察过程中,教师要注意学生主体地位的体现,不能过多限制学生观察,只要学生喜欢,应让他们尽情观察,并给予及时指导,引导学生更加深入地探索。低年级学生学习能力差距较大,采用小组合作的方式可以缩小部分差距,但学生合作经验不足,教师需加强学生合作学习的指导。同时,每个班级的学习能力同样存在差距,教学中教师需根据学生学习程度及时调整教学方法和任务要求。多种学习方式相辅相成,学生可以获得不同角度的认知,来自教师和不同学生的观察结果能够刺激他们再思考、再发现,为深度学习奠定基础。

(四)积累观察反思,探索本质规律

良好的观察需要大量的知识储备,没有足够的知识不仅不能理解所观察的事物,而且对于事物的某些特征也难以觉察。因而,教师引导学生对以往的观察进行积累和反思尤为重要。反思可以运用更加符合低年级学生特点的具象化形式,如说、画、唱、跳等,在多次反复的过程中加深理解和感悟,以量变引起质变。同时,教师可以多应用皮格马利翁效应来激励学生积极探索,刺激学生表达,再通过表达刺激反思。通过教师的引导和学生相互之间的分享,学生在反思的积累中潜移默化地迁移已有知识、分析规则或规律反映的事实,从现象乃至隐蔽的细节中探索事物的本质,最终形成自己的观察方法和路径,提升学习力。

结合以上策略,在针对低年级基于观察的编程课堂上,笔者提出了下图中的模式,引导学生围绕观察任务利用编程解决问题。

图1 低年级基于观察的编程学习模式

教育无定法、无捷径。低年级的编程课程具有一定的特殊性,就更加要求教师在教学中另辟蹊径。我们强调思维的训练,但那些高大上的词语都不如观察力的培养来得踏实和本真,观察力的培养是思维训练的第一步。其实学生只是不会“看”,教师要引导学生通过深入观察、掌握观察的本质深度学习,为思维的发展助力,这样才能让编程的“星星之火”持续燎原。

猜你喜欢

指令编程笔者
编程,是一种态度
元征X-431实测:奔驰发动机编程
老师,别走……
编程小能手
纺织机上诞生的编程
换位思考,教育更精彩
老师,你为什么不表扬我
ARINC661显控指令快速验证方法
杀毒软件中指令虚拟机的脆弱性分析
中断与跳转操作对指令串的影响