小学信息技术Scratch四段渐进式教学法

2019-09-10 07:22岳冰
关键词:流程图绘制城堡

岳冰

摘要:《画城堡》一课是对前面的Scratch画图教学内容的总结,同时要进行模块化编程解决问题的策略学习。对此,设计了四段渐进式教学法——引导层:分解任务,用自然语言描述算法;基本层:提炼算法,形成简易流程图;应用层:从流程图到脚本实现;拓展层:实践算法,举一反三。

关键词:Scratch四段渐进式教学法画城堡

作为苏科版小学信息技术五年级Scratch模块画图部分的最后一个课时,《画城堡》是对前面的Scratch画图教学内容的总结,同时要进行模块化编程解决问题的策略学习。从程序设计上看,学生需要学习新建画简单正多边形的功能块,再依次将之组合起来;从计算思维的角度看,学生需要通过分析城堡部件来拆分功能块,还需要分析功能块与绘制城堡之间的联系,规划出功能块组合的算法。同時,这节课还要求学生通过调用功能块体验模块化编程思想。所以,这节课的难度很大,但对于学生的信息技术素养是一种很好的锻炼和培养。

经过对南京市教研室组织的相关教研活动的学习,我设计了四段渐进式教学法(引导层—基本层—应用层—拓展层),并进行了教学尝试。以下结合具体教学片段加以说明。

一、引导层:分解任务,用自然语言描述算法

在进行教学设计时,我考虑到本节课学习任务的复杂性,首先运用项目教学的思路设计了分解复杂任务的教学环节:让学生把绘制城堡的任务分解成若干子任务,然后用自然语言描述绘制顺序。

师(出示图1)老师出示的城堡是由哪些基本图形组成的?你能分别说一说吗?

(学生在学习单的指引下,通过小组合作完成分解城堡的任务。)

生图①、图③是边长为30的正三角形;图④、图⑦是宽为30、高为90的长方形;图②是边长为90的正三角形;图⑤是边长为90的正方形;图⑥是宽为30、高为60的长方形。

师你能说说你想按照什么顺序来画这个城堡吗?怎样绘制才能使得绘图起始位置的调整次数最少,达到简化脚本的目的?简单说说你的理由。

(学生小组讨论,尝试说服小组内的其他成员。)

生可以按照①④②⑤③⑦⑥的顺序来画城堡。原因是画①④②⑤四个图形时不需要移动起点,画③⑦两个图形也共用一个起点,所以,整个画城堡的过程只需要移动两次起点位置,这样画使得脚本最简单。

分析问题,明确任务,将画城堡任务分解成画多个多边形的子任务,让学生体验解决问题的模块化策略。一句“怎样绘制才能使得绘图起始位置的调整次数最少”,让学生带着目的去思考,很自然地得到用自然语言描述的绘制顺序。其实,这就是最原始的解决问题的描述算法练习。

二、基本层:提炼算法,形成简易流程图

根据本节课的教学目标,仅仅用自然语言描述绘制顺序是远远不够的。所以,我设计了流程图填空环节,让学生讨论并填写学习单中的流程图,从而将用自然语言描述的绘制顺序用更加科学、严谨、清晰的流程图表述出来。

师请大家把刚才小组讨论的顺序填写到学习单中。

(学生填写学习单。)

生(出示图2)如果所有的图形统一用顺时针顺序绘制,我们绘制的流程如图所示。(出示图3)如果画副堡小三角形和小长方形用逆时针顺序,画主堡用顺时针顺序,就可以省略一次移动,流程如图所示。

用自然语言描述出绘制顺序以后,部分学生的思路还不够清晰,没有能够完成的小组也不能透彻地理解流程。这里,引导学生填写留空的流程图,来更清晰地表述绘制流程,有助于学生直观地理解。限于学生的年龄,我没有把流程图设计成完整、“标准到冷漠”的科学样式——那种格式化的框架不是算法的本质。至于最终形成了两种流程,却是意外之喜;到底哪一种更简单,要到后面的实践环节去验证。

实际到最后的编程环节,学生体验到:如果在新建功能块时想得简单了,最终主程序的调整就会多一些;反之,如果在新建功能块时充分考虑到主程序调用的方便而做出一些调整,则可以使主程序更加简约。

三、应用层:从流程图到脚本实现

流程图并不是终点,在流程图的指引下完成程序搭建才是最终目的。整体画城堡时只要按照前面填好的流程图“施工”即可。但在“施工”过程中,部分学生会由于没有考虑到流程与新建功能块的配合问题(如正三角形和长方形本身的绘制顺序,抬笔、落笔的设置,长方形长、短边的顺序等),导致主程序经过多次调整才能最终绘制成功。这里,应当提前预设到这些问题,准备好能够帮助这部分学生分析问题、解决问题的学件。

师通过刚才的学习,我们掌握了新建功能块的方法,并将组成城堡的几种单位图形全部定义完毕。接下来,就请大家按照你们小组的流程图来搭建主程序脚本。

(学生小组通过主程序调用功能块完成图形绘制。教师巡视指导。)

师你能说说新建功能块在编程或现实生活中有哪些实际意义吗?

(学生展示交流。)

师新建功能块在编程中可以把复杂的脚本分成一个个功能块,最后将功能块用主程序串联起来,从而实现复杂的编程任务;在现实生活中,我们也可以通过“分解任务—分别完成—最终组合”的方式来提高工作效率——这就是模块化解决问题的思路。

在按照流程图的描述完成主程序脚本搭建的过程中,学生能够体验到调用功能块完成复杂图形绘制的意义。这是本节课的重难点所在。

四、拓展层:实践算法,举一反三

学生学会了模块化编程的计算思维模式以后,需要在新的任务中加以尝试和运用,从而达到内化知识和巩固技能的目的。也只有通过解决实际问题的即时拓展练习,才能使学生吸收算法精华,真正达到培养计算思维的目的。

师(出示拓展任务:城堡大改造)刚刚我们画城堡时调用的功能块只能搭成书上的这个城堡吗?用这些“材料”,你还可以创作出什么样的城堡?请大家在小组中用贴图的方式搭建新城堡,并在空白处写出简易绘制流程。

(学生小组合作完成新城堡的搭建,并汇报交流。提出更好设计或更好流程的小组,可以赢得教师“点赞”。)

学生体验了模块化编程解决问题的方式以后,可以用这种思维模式做一些更有创意的事情——比如设计新的城堡,甚至搭建更多稀奇古怪的事物。这里,教师需要向学生强调:一定要先进行设计,再打磨流程,最终根据流程完成编程。

下课铃响了,学生还沉浸在创造中,意犹未尽。于是,课后,我在“有道卡搭”平台上发布了拓展任务,学生也提交了一些颇具创意的作业(其中一个如图4所示)。

总之,在Scratch教学中应用四段式教学法,层层推进,可以让学生将复杂的编程任务分解开来,从一个低起点出发,逐渐提炼算法、指导编程,最后达到应用算法解决实际问题的更高层面。这样的渐进式学习,也有助于学生信息技术素养的培养。

参考文献:

[1] 凌秋虹.Scratch在小学信息技术课堂中的应用与实践[J].中国电化教育,2012(11).

[2]张超金.基于支架式教学策略的小学Scratch编程教学探究[J].教育信息技术,2019(Z1).

猜你喜欢
流程图绘制城堡
云的识别指南
Painting ski maps 绘制滑雪地图
绘制童话
绘制世界地图
魔逗城堡
神秘的不速之客
空中飘来一座大城堡
流程图学习指南
大城堡
魔逗城堡