陳菁菁
Scratch作為一款專為8歲以上兒童設計的圖形化開源編程軟件,已陸續(xù)走進小學信息技術課堂。Scratch趣味編程的宗旨是“想象—編程—分享”。根據小學生的認知規(guī)律,筆者認為在創(chuàng)作之前要先學會模仿,這需要引導學生去分析范例作品,如作品的角色、動作、指令等,再引導學生初步設計腳本。在學生掌握了基本操作后,再鼓勵他們對范例進行改編,或者根據自己的想象創(chuàng)作個性化的作品,再與同伴分享作品,交流設計思想、算法流程、指令程序等,在交流中觸發(fā)靈感,在思辨中分析程序、優(yōu)化設計。最后的目的是讓每一位學生都能夠自己設計腳本,創(chuàng)作出各具特色的Scratch作品。筆者開發(fā)了一套Scratch校本教材,并構建了新的教學模式,稱為ADCS教學模式,其基本框架如圖1所示。
“分析·設計·創(chuàng)作·分享”是筆者在教學實踐中逐步建構起來的適合小學六年級學生的Scratch教學模式,是校本教材的大框架,在實際教學中,還應根據不同的內容與課型靈活運用,力求達到最佳效果。
制作分析卡引導學生整體分析作品
利用Scratch可以創(chuàng)作出多種主題的作品,但如果直接告訴學生具體的操作,他們學到的只是具體的程序指令,這與小學信息技術課程和Scratch的教學宗旨不符。教師應該讓學生掌握分析問題的方法,找到解決問題的關鍵,這樣的學習將更有現實意義,而教師可以給學生搭建支架,幫助他們掌握分析問題的基本方法。
例如,校本課程中的“青蛙救公主”這個主題是要求學生利用Scratch制作一個有障礙物的迷宮游戲(如圖2)。在設計之前,筆者先讓學生看范例,然后填寫主題作品分析卡(如表1)。
筆者利用主題作品分析卡的形式,為學生搭建分析問題的支架,詳細地列出作品中所包含的要素,理清需要完成的任務和相應的指令,以及場景的切換和角色之間的關系,為接下來的程序設計提供思路與依據。
制作學習錦囊輔助學生設計程序
對小學生而言,因為是初次接觸程序設計,對指令的選擇、參數的設置,尤其是程序結構都會比較陌生。為了輔助學生設計腳本程序,筆者在Word中制作了學習錦囊,并介紹了相關指令的含義和用法,學生可先學習而后再到Scratch中體驗程序運行的效果。
例如,在“小貓旅游記”這個主題作品的設計中,要讓小貓從學校走到動物園再走到西湖邊(如圖3),要用到“移動”指令,而移動指令有多種表現方式,將這些知識放在學習錦囊(如圖4)中進行介紹,學生可以一一嘗試并總結出它們的特點與各自的優(yōu)勢。
制作微課視頻促進學生自主設計
Scratch的目的不是要培養(yǎng)程序編寫大軍,而是要培養(yǎng)學生用程序表達自己想法的習慣。因此教學中,教師不應強制學生使用哪個指令來設計腳本,而應鼓勵學生拓寬思路,在設計一個角色效果時嘗試使用不同的腳本程序去表達,從中體會程序設計的多樣性。在課堂上教師難以面面俱到,因而可以制作微課視頻,幫助有需要的學生自主學習、設計不同的腳本程序。
例如,在“青蛙救公主”這一主題作品中,青蛙的移動可以有兩種解決思路:一是讓青蛙跟著鼠標移動,二是用鍵盤上的方向鍵控制青蛙的移動。本課要學習的是用鍵盤控制青蛙的移動,教師引導學生在完成作品中掌握這個技巧,對另一種用鼠標控制青蛙移動的方法,教師則制作好微課視頻,供學生自主探究學習。最后學生探討研究得出多種方法(如表2)。
拓展思維引導學生個性化創(chuàng)作
學生掌握了分析、設計與創(chuàng)作的基本方法后,拓展提升是必要的。教師再拋出問題,組織學生討論作品改編的思路,歸納改編方法,引導他們對已完成的作品進行再設計,同時提供一些相關的范例讓其賞析,鼓勵他們發(fā)揮想象力,表現自己的創(chuàng)意(如下頁表3)。
師:“青蛙救公主”這個游戲大家完成后的效果相同,如果想讓這個作品更有趣或者增加一些難度,你覺得可以怎樣改編?
生1:改變旋轉棒的旋轉方向,有的順時針,有的逆時針,增加青蛙通過的難度。
生2:炸彈不只是在水平方向移動,還可以忽快忽慢,用隨機數代替秒數的參數。
生3:我想增加一些角色,如財富寶、怪物,讓迷宮游戲豐富起來,并且增加計分功能,吃到好的加分,吃到不好的要有相應的懲罰。
深度交流分享觸發(fā)學生靈感
在組織交流展評活動之前,要求學生從作品設計思路和腳本程序兩個方面來展示,其他學生邊聽邊看邊思考,并根據該作者的分享,提出自己的評價意見和修改建議。教師再適度引導,啟發(fā)學生從設計和程序中發(fā)現亮點,反思自己的作品,尋求更好的程序設計方案,產生新的設計靈感,達到深度分享的效果。
例如,學生改編了“青蛙救公主”的作品后,在交流展示環(huán)節(jié)筆者希望無論是腳本程序的寫法還是創(chuàng)作改編的設計理念,他們都能發(fā)現同伴的優(yōu)點并為己所用,關于這個話題的討論片段如下。
師:請你們說一說在改編作品時的想法,并展示、介紹所用的程序指令。
生1:我是想增加游戲的難度,旋轉棒時而順時針旋轉,時而逆時針旋轉。為了讓旋轉角度每次都不一樣,我在重復執(zhí)行次數中增加了隨機數的指令。當青蛙跟著旋轉棒的方向走到一半時,旋轉棒突然反方向旋轉,青蛙碰到旋轉棒,游戲結束(如圖5)。
生2:我想增加游戲的運氣性,讓財富寶這個角色能夠隨機變化造型,運氣好的話可以加分或者直接通關,如果運氣不好就會被扣分或回到原點。除了增加運氣性也考驗游戲者的策略,思考直接躲避風險不去吃財富寶還是碰碰運氣去吃財富寶,在程序指令中給造型進行編號,在每一個編號里面寫上所對應效果的指令(如圖6)。
在一年多的Scratch教學實踐中,筆者引導學生一起分析主題,設計程序,創(chuàng)作作品,分享智慧,不僅發(fā)展了學生的邏輯思維能力,而且提高了學生的編程能力,培養(yǎng)了學生創(chuàng)新能力,使其形成了優(yōu)化意識。利用ADCS模式開展Scratch教學,很好地體現了以學為主、以導為方的教學思想,學生在做中學,在玩中學,在樂中學。在今后的教學中,筆者要進一步總結經驗,不斷探索適合小學生特點的新型教學模式,讓Scratch成為學生的好伙伴。