王德品
摘 要:反编译课堂教学策略是以“任务驱动”教学模式为基础,根据程序反编译思路,结合学生学习的困惑,适当地进行一些教学模式上的修改和补充一种教学尝试。其修改的地方有:(1)先用。将任务驱动教学策略的引出、给出任务环节改为先引出一个程序,让学生先试用。(2)后教。从整体分析、分解到局部,克服碎片化学习。分析后发现是已知知识或已掌握技巧,则可以巩固已有知识,拓宽应用渠道。分析后发现是未知知识或暂时没有思路通过scratch实现的功能,在学生脑海里形成了问题,激发好奇心、求知欲,引出学习任务。(3)以点带面。从局部到整体,让知识从例子程序功能的应用渠道扩展到相近功能上,明确知识的应用范围,促进知识应用的活、深、广,提高学生实际应用能力,为创新提供必备条件。
关键词:scratch教学;反编译;教学策略;应用能力
任务驱动教学模式在信息技术教学中是很有效的教学模式。但由于课堂时间有限,在Scratch课堂教学中运用任务驱动教学模式往往会忽略作品中蕴含的编程思想,还会略过认识和发现问题的过程,直接引出或给出一个或几个小问题。这些小问题一般来源于现实中的一个较大问题中的部分,或者是其他作品的部分。学生在不清楚小问题如何产生,以及现实作用,就会出现学会了也用不出去的情况。在不了解课堂任务的外延的情况下,或者不理解作品中蕴含的编程思想的情况下,而去反复仔细研究“部分”,就会出现只见树木不见森林的现象。出现这种现象的原因是在Scratch课堂教学中“任务驱动”教学模式常常是碎片化学习。学生只学会课堂任务的内涵,没有涉及任务的外延。从而造成实际应用能力缺乏,创新就成了无源之水、无根之木。那如何在有限的课堂时间内,即学习“任务”的内涵,又涉及“任务”的外延呢?反编译教学策略以“任务驱动”教学模式为基础,根据程序反编译思路,结合学生学习的困惑,适当地进行一些教学模式上的修改和补充一种教学尝试,为提高学生scratch编程技术的实际应用能力,为创新提供基本条件。
1.登高望远,提升应用“活”度
“思想有多远我们就能走多远”,“思想”是影响实际应用能力提升重要因素之一。想不到的人,永远不可能做到。如一次实际应用能力测,试题目是:在scratch中用小猫画一个步长为150的正方形。测试对象是五年级学生,五年级学生已经掌握手绘正方形技能(正方形绘制是四上数学教学内容),且学过scratch的“移动”、“旋转”、“落笔”、“抬笔”几个相关积木。测试结果:一个班成功画出步长为150正方形的就4位学生,只有一位学生用到“重复4次”积木(这个积木也学过),其他的有些画成一条线,有些弄成各种奇形怪状。难道他们做不到吗?不是,当我讲解完后,学生们齐声感叹:原来这么简单!我是这么讲的:正方形是怎么画的?是不是先画一条边,然后第二条边,与第一条要垂直(旋转90°),然后……就没有然后了,学生已经会了,争先举手,帮我讲完一个正方形画法。正如杰弗里·卡恩说的:“脑和手的距离,是全世界最远的距离。”是的,经常做得到的事情没想到!因此,打开学生思想和提高学生眼界,是教学重中之重的事情。
2.先用后教,了解应用深度
反编译教学策略改变任务驱动的第一个环节创设情境为“试玩”,不用不知道,一用真奇妙。爱玩是每个孩子的天性,玩不但可以激发学生兴趣,还可以动手、动脑。在“试玩”中,学生能感觉到程序的功能和界面符不符合人性化,有没有bug,有没有哪些“反人类”的设计缺陷,以及可以改进的地方。这些都是一些小地方、小细节,可“失之毫厘,谬以千里”,细节决定成败。
通过先用,能给学生深刻的印象,等到自己做的时候,会自然而然的考虑到这些细节问题,起到潜移默化的作用。“我的画图软件”第一课时,课堂任务是实现画笔的功能:1、画笔跟随鼠标移动;2、鼠标左键按下时落笔,放开时抬笔。老师:同学们会用画图软件吗?如果我们自己做一个画图软件来画画,那美不美?然后让学生先用老师找到的《我的画图软件.exe》画画,经过5分钟绘画:画一棵树。学生熟练的掌握画笔功能,不用引导学生就能讲出画笔的功能:跟随鼠标移动,按下鼠标左键画线,放开左键停止。还提出了很多建议,其中有的学生还附带提供解决思路的。经过大家分析后,当学生开始任务时,学生们积极性很高,他们着急地想把刚才想到“改进措施”实现。
当作品展示时,各组争先恐后的介绍自己的特色。教师在边上不断地提醒才能将学生们的展示思路先拉回到本节课任务——画笔功能的介绍,然后再介绍他们迫不及待的“特色”和一些没有实现是想法、一些没有解决的问题。如:当鼠标移出舞台后拖动鼠标,舞台里面还在画画(在边上);点击绿旗时,会在笔头那个地方留一个点或线,总是不能干净的开始绘画等。课堂时间有限,因此建议以后课上一起研究,或者课后自行研究。
3.温故知新,拓宽应用广度
在“试玩”中,我们能感受到程序的编程思想,还能发现很多细节问题,但没法看到程序的实现方法。通过逐层分析程序的各个功能,然后思考实现办法。从程序中每分解出一个小功能,我们都会给它做上会(√)或暂时没有思路(?)的记号。整个过程既是为了引出本节课的内容,是巩固、寻疑的过程,也是学习、思考、研究的方法。我们从整体着手,试玩、分析、分解,完成从整体到部分,让课堂学习任务不再是碎片化,是带有很多“接口”的。从整体中来,回到更广的整体中去。让学生在学会知识内涵的同时,了解知识的“接口”——外延,拓宽学生应用知识的范围。
反编译教学策略有提高学生实际应用的灵活性、深度、广度的作用。在运用时,要把握以下要点:(1)“先用”不能时间太长;(2)分析、分解,要简略得当;(3)学生为主体,教师主引导,特别是要注意不能“放飞”课堂,要像放风筝一样,教师要拿好风筝线。通过“反编译”教学策略一段时间的教学,现在学生下课了还不愿意离开电脑室,他们还有很多想法没有实现,很多感兴趣的问题有待研究。反编译教学策略让学生在学习他人的优秀作品时,进行“逆向分析、研究”工作,以推导出他人的程序所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素。站在他人的肩膀上学习,努力让学生成为真正意义上的学习主体,放飞思想,模仿、改造、创新。注重过程,结果只是用来验证我们过程有效性,不作为评价的重要指标。最后用一句话来总结:人生就是一个历程,我们既要追求结果的成功,更要注重过程的精彩。
參考文献:
[1] https://scratch.mit.edu/ 社区
[2] 《基于Scratch语言的小学信息技术游戏化教学研究》单海霞 参考网http://www.fx361.com/page/2016/1227/440422.shtml
[3] 《基于计算思维培养的Scratch教学论文》瑞文网http://www.ruiwen.com/lunwen/1809447.html