您好, 访客   登录/注册

在建构模型中培养学生计算思维

来源:用户上传      作者:

  Scratch程序设计语言是由麻省理工学院媒体实验室团队设计并制作的。构成程序的命令和参数通过模块中积木式的控件来实现,拖动控件并按序拼接就可实现编程。思考怎样来轻松编写属于自己的互动媒体,怎样能让最终效果和相关控件进行对接并衔接,就需要对作品进行翔实解剖和分析,提炼有效的关键词,梳理关键词逻辑关系,关联关键词与对应的控件,渐近式构建出作品模型,通过对关键词解读实现与控件的对接,转变成程序化的语言,真正实现无缝连接。在程序设计教学过程中,应该重视分析问题和解决问题的思维过程和方法,逐渐培养学生的计算思维能力。下面以《打地鼠》游戏作品为例,谈谈自己的实践与思考。
  【教学片段一】
  学生体验《打地鼠》游戏。
  师:我们先来看榔头的基本动作,谁来用语言描述下?
  生:榔头在移动,而且是鼠标动的时候,榔头跟着移动。
  师:这位同学说得非常准确,说明他观察得非常仔细。
  师:我们在分析时,可以找找其中的关键词。
  任务:“榔头”中包含的信息有哪些?关键词是什么?它们之间是怎样的关系?
  师:能用语言描述下一只地鼠的基本动作呢?
  生:游戏开始后,没有看见地鼠,过了一会儿,地鼠冒出来,过一会儿,又消失了。
  师:这位同学表述得非常详细了。我们再来找一找这句话里的关键词。
  任务:“地鼠”中包含的信息有哪些?关键词是什么?它们之间是怎样的关系?
  生:隐藏—等一會—出现—等一会—隐藏……
  师:这样的过程重复,我们能用箭头简单的表述出来吗?
  师生合作画出地鼠关系结构图。
  【思考】
  在本环节教学中,教师注重学生主动的参与,让学生在实践操作和思维碰撞中分析作品中的每个角色及动作,教师要特别关注学生对过程的语言描述,强调对其中关键词的提炼,从而潜移默化地使学生初步掌握通过关键词构建模型的方法,从而渗透学生计算思维意识。
  化整为零,提炼关键词,形成建模意识。程序语言的脚本追求的是精炼、简洁明了。而刚才学生的描述是片段式的,属于感性、通俗易懂的描述性语言。如何巧妙地从语言中获取精髓即核心信息,这就需要学生学会关键词的提炼。关键词关系能一清二楚地展现,完成从具体描述语言到程序语言的过渡,让看似杂乱无章的编程有规律可循,也就是隐射了建模思想。比如在描述榔头动作时,学生自主得出,榔头的移动和鼠标动作一致,自然而然,榔头和鼠标之间的结构图就建立起来了,也为之后关键词向控件的转换做了铺垫。
  【教学片段二】
  师:同学们仔细观察下,我们找到的关键词在控件区能否找到对应的控件?
  师:刚才我们画的榔头关系图,你能发现榔头和谁的动作一致?
  生:榔头和鼠标动作一致。
  师:那我们可以用哪个控件?
  生:鼠标指针。
  师:接下来,看地鼠的关系图,你能根据关键词在控件区找到相应控件吗?
  生:“隐藏”可以在控件区找到,“出现”可以用“显示”控件,“等一会”可以用“等待”控件。
  师:等待多久?刚才有同学说,地鼠是时不时冒出来的,也就是没有规定时间。那我们可以运用一个怎样的词来表达?
  生1:随机的。
  师:随机数,谁能准确地说说它的含义?
  生2:随便哪个数字都可以。
  师:结合游戏情形,等待的时间在多少范围内比较合适?为什么?
  生3:可以等待1 ~ 6秒。如果等待时间超过6秒,地鼠隐藏和显示的动作就太慢了。
  师:如果等待时间在1 ~ 10秒呢?
  生4:因为是随机数,可能会碰到每个地鼠都要等待10秒,那地鼠的动作就太慢了。
  师:大家找找,哪个控件类似于随机数的要求?
  生:“数词和逻辑运算”控件里面“在1到10间随机选一个数”。
  【思考】
  在本环节中,教师用榔头和地鼠的关系结构图,引导学生把关键词与控件区的控件产生联系,进行控件的对接。比如在描述榔头动作时,学生自主得出:榔头和鼠标动作一致,即榔头随鼠标移动。而如此精准的关键词可以及时转变为脚本语言,一目了然,学生瞬间感受到Scratch程序设计的易懂性。
  在地鼠关键词向控件的转化中,学生通过实践操作,发现问题,并通过自主探究来解决问题。比如,控件中的随机数是一个难点。学生的疑问出现了:有等待1秒,有等待2秒。有的直接来反问老师,具体要等待多久。通过多种可能性,教师自然而然地引出了随机数这个概念,继而让学生自己感受下随机数含义,最后联系实际游戏的需求,鼓励学生自己来说一说运用怎样的随机数比较合适。学生都积极参与,并且在自主探索和思辨中完成学习,理解了数字和逻辑中随机数的概念。
  通过这样的处理,在脚本编写中,教师并没有一开始就拖动控件形成脚本,而是充分让学生从感性的现象描述上升到理性的理解和思考,特别是关键词的提炼、角色结构图的呈现,让每位学生都有一个初步建模的意识。
  【教学片段三】
  师:地鼠和榔头之间有没有交互动作呢?以地鼠为例。
  生1:榔头碰到地鼠,地鼠被榔头打到。
  师:那我们也来找找这个交互动作里面的关键词。
  生2:碰到榔头,按下鼠标。
  师:除了要碰到榔头,打到地鼠,还要满足什么条件?
  生:鼠标按下。
  师:是的,地鼠和榔头的交互动作,这两个关键词都要满足,不但要碰到榔头还要按下鼠标。
  师:接下来,把地鼠被打到这一过程中的关键词都找出来。
  师生共同罗列关键词:碰到榔头并且按下鼠标,得分加1,最后消失。
  师:这组交互动作,该怎样把关键词关联起来?
  任务:画一画关键词的流程图。要求:涉及判断用◇框表示,涉及计分用□框表示,涉及先后顺序用带箭头的线段→表示。
  【思考】
  在本环节教学中,主要解决榔头和地鼠互动脚本的问题,学生不单单要提炼关键词,还要把两个角色进行关联,为把关键词之间的关系搞清楚,化零为整,关联关键词,在教学中引入了流程图概念。
  如果说上一片段中关键词是让学生了解怎样来建立模型,那么这里的关键词是对程序的又一个深入理解。首先教师让学生用关键词关联角色之间的互动,在此过程中,提炼的关键词让两个角色之间产生了关系,学生基本都会提取关键词“碰到榔头”,教师引导学生了解满足这个条件还不够,在“碰到榔头”的同时,还要“鼠标按下”,要两个条件同时满足,才能成功加分。学生在这一分析过程中,能感受到程序设计的严谨性,也就是渗透了计算思维的培养。
  小学阶段,学生对流程图不是很熟悉,课堂中师生应共同分析,补充、完善流程图。在这一过程中,遵循一个主旨:用关键词来让流程图成立。将关键词在流程图中进行布局,理清角色之间的关系,使学生真正理解编程的思路,真正掌握编程的方法,强化计算思维。
  Scratch语言程序设计的教学,注重的并不是结果,而是学生的思维过程和思维方式。在教学中,应该努力引导学生学会分析作品的手段和方法,让学生尝试独立自主建立模型,培养学生的探索精神和创新意识,把计算思维的培养真正做到实处。
  (作者单位:无锡市洛社中心小学)
转载注明来源:https://www.xzbu.com/1/view-14846497.htm