金鑫
【摘 要】Scratch是麻省理工學(xué)院媒體實驗室開發(fā)的專為青少年而設(shè)計的計算機編程語言,非常適合小學(xué)生學(xué)習(xí),并且具有面向?qū)ο蟪绦蛟O(shè)計的特性,是學(xué)生學(xué)習(xí)和感受計算機編程,培養(yǎng)創(chuàng)新思維、創(chuàng)客意識比較理想的載體。將Scratch課程引進(jìn)小學(xué)信息技術(shù)的課堂,不僅僅是為了讓學(xué)生學(xué)會編程,更是將學(xué)生從創(chuàng)意之路領(lǐng)上創(chuàng)客之道。
【關(guān)鍵詞】Scratch 進(jìn)階學(xué)習(xí) 信息技術(shù) 編程
Scratch是麻省理工學(xué)院媒體實驗室(MIT Media Lab)開發(fā)的全新的、專為青少年而設(shè)計的計算機編程語言。與以往枯燥且難記的計算機代碼指令不同,它采用的是形象且直觀的積木式指令。運用這樣的指令能夠很方便地創(chuàng)建出交互性的故事、有趣的動畫、復(fù)雜的游戲以及美妙的音樂等有意思的程序作品來,非常適合小學(xué)生學(xué)習(xí)。但是,現(xiàn)行小學(xué)信息技術(shù)Scratch內(nèi)容的教學(xué),教師的常規(guī)做法是以模塊分解的方式選擇幾個案例作為教學(xué)載體,然后讓學(xué)生通過分析模仿案例來制作Scratch作品,學(xué)會Scratch編程。在呈現(xiàn)學(xué)生作品時,經(jīng)常會出現(xiàn)作品相似度高的現(xiàn)象。后期自由創(chuàng)作,很多學(xué)生更會受固定思維以及原有經(jīng)驗的禁錮,不能發(fā)揮出創(chuàng)意,體現(xiàn)創(chuàng)造力,因此不能充分調(diào)動每一位學(xué)生的學(xué)習(xí)積極性,開發(fā)和培育每一位學(xué)生的學(xué)習(xí)潛能和特長。這需要教師改進(jìn)教學(xué)方式,創(chuàng)新教學(xué)方法。因此,筆者嘗試進(jìn)行了Scratch進(jìn)階學(xué)習(xí)活動的實踐研究。
一、Scratch進(jìn)階學(xué)習(xí)概述
Scratch進(jìn)階學(xué)習(xí)有別于仿課,基本的教學(xué)觀點是“學(xué)習(xí)即智造”,基本的特點為“有創(chuàng)意,能設(shè)計,敢動手,樂分享”,關(guān)注的是創(chuàng)新思維、創(chuàng)客教育在課堂教學(xué)中的體現(xiàn),理論依據(jù)主要來源于以教育學(xué)和心理學(xué)為背景的建構(gòu)主義理論以及以社會學(xué)與網(wǎng)絡(luò)經(jīng)濟(jì)學(xué)為背景的“長尾理論”。仿課是從1到N,進(jìn)階則是從0到1。從1到N,意味著復(fù)制;從0到1,意味著創(chuàng)新。
Scratch進(jìn)階學(xué)習(xí)活動(圖1)是在普通學(xué)習(xí)活動的基礎(chǔ)上基于項目的學(xué)習(xí)活動。第一步是創(chuàng)意學(xué)習(xí):基于軟件工程的思想對編程形成一個整體的架構(gòu),利用思維導(dǎo)圖發(fā)散學(xué)生的想象力,并通過編程操作加以實現(xiàn)。第二步是創(chuàng)客意識:在前面的基礎(chǔ)上,從虛擬的編程中走出來,加上現(xiàn)實的體驗,讓學(xué)生具有初步的創(chuàng)客意識。兩者是一種遞進(jìn)的關(guān)系。實踐表明,在Scratch中采用進(jìn)階學(xué)習(xí)活動可以有效地發(fā)展學(xué)生的個性,培養(yǎng)其創(chuàng)新精神。
圖1 Scratch學(xué)習(xí)活動
Scratch進(jìn)階學(xué)習(xí)活動的過程其實是學(xué)生不斷提升自我的過程。學(xué)生通過Scratch進(jìn)階學(xué)習(xí)活動,能提高學(xué)習(xí)的興趣與動手設(shè)計的能力。在活動中學(xué)生可以掌握和整合多種知識與技能,從而把想象力與創(chuàng)造力落到實處。下面,筆者將結(jié)合“迷宮游戲”的創(chuàng)作來對Scratch進(jìn)階學(xué)習(xí)活動進(jìn)行詳細(xì)的闡述。
二、Scratch進(jìn)階一:創(chuàng)意學(xué)習(xí)
在浙攝版六年級下冊Scratch單元《創(chuàng)編游戲》一課中,學(xué)生運用鍵盤控制和偵測判斷,進(jìn)行游戲的設(shè)計(圖2)和腳本的編寫(圖3),完成了“迷宮游戲”的簡單制作。
[創(chuàng)意主題:迷宮游戲 游戲規(guī)則 運用鍵盤控制主角移動。角色從起點移動到終點。走到賽道之外,會返回起點。到達(dá)終點,顯示“我成功了!” 舞臺 1.起點
2.道路
3.終點 角色 1.小貓 動作
設(shè)計
1.小貓從起點出發(fā),通過上下左右鍵控制小貓的運動
2.小貓如果碰到道路以外的顏色,就返回起點
3.小貓如果碰到終點的顏色,就說“我成功了!” ]
圖2 游戲的設(shè)計
圖3 腳本的編寫
Scratch軟件的創(chuàng)意學(xué)習(xí)(圖4),并不是通過“教師教,學(xué)生學(xué)”這種基本模式,而是讓學(xué)生通過“模仿—改編—自創(chuàng)”這一過程來實現(xiàn)。這里涉及軟件工程的基本思想。
圖4 創(chuàng)意學(xué)習(xí)
在Scratch教學(xué)中,學(xué)生進(jìn)行作品創(chuàng)作的過程,實際上也包含了一個軟件開發(fā)的系統(tǒng)工程(圖5)。涉及需求分析、功能設(shè)計、編程調(diào)試、展示分享等多個軟件工程的環(huán)節(jié)。編程調(diào)試、展示分享在基礎(chǔ)學(xué)習(xí)時已經(jīng)進(jìn)行了實踐。編程調(diào)試、展示分享環(huán)節(jié)中,關(guān)注的是學(xué)生的計算思維應(yīng)用。在需求設(shè)計、功能分析環(huán)節(jié)中,注重學(xué)生的創(chuàng)意思維體現(xiàn)。這里主要提到的是需求分析和功能設(shè)計。
立項][1需求分析][3編程調(diào)試][2功能設(shè)計][4展示分享]
圖5 軟件開發(fā)的系統(tǒng)工程
在軟件工程中,需求分析指的是在建立一個新的或改變一個現(xiàn)存的電腦系統(tǒng)時,描寫新系統(tǒng)的目的、范圍、定義和功能時所要做的所有的工作。換到Scratch創(chuàng)編游戲來說,需求分析是學(xué)生進(jìn)行作品創(chuàng)作的關(guān)鍵過程。有了需求分析學(xué)生才能清楚地了解自己創(chuàng)作作品的需要,創(chuàng)作作品的脈絡(luò)才會清晰。在確定了創(chuàng)作作品的這些需要之后,學(xué)生才能更好地分析和尋求新的作品。需求分析階段的任務(wù)是確定作品的功能。
因而在學(xué)生進(jìn)行創(chuàng)作作品之時,教師首先需要引導(dǎo)他們對即將要創(chuàng)作的作品進(jìn)行需求分析。出示一份普通版的迷宮(圖6)與一份進(jìn)階版迷宮(圖7),進(jìn)行對比。
圖6 《迷宮》 圖7 《迷宮之小車》
生1:原來我們的迷宮是仿造書上的Z字形迷宮?,F(xiàn)在看見的新的迷宮,它的舞臺設(shè)計比較復(fù)雜,并不是簡單的直行。
生2:原來的主角是小貓?,F(xiàn)在換成小車了。主角有改變。除了主角,還加入了其他角色。三個可以變化不同顏色的交通信號燈。
生3:主角小車除了超出區(qū)域后會退回到原點,當(dāng)它碰到交通信號燈時,不同的顏色會有不用的響應(yīng)動作。
師:同學(xué)們真會觀察。這個作品在舞臺、角色、動作設(shè)計(圖8)上都有了改變。在設(shè)計《迷宮之小車》時,我的需求是:運用鍵盤控制小車(角色)移動。角色從起點移動到終點。走到賽道(舞臺)之外,會返回起點。到達(dá)終點,顯示 “我成功了!”途中遇到綠燈、紅燈、黃燈(角色),小車會有不同的反應(yīng)(動作)。如果接下來你想制作一款好游戲,會在哪方面進(jìn)行改進(jìn)?
圖8
生4:我將要設(shè)計一個“走出山洞”的迷宮游戲。我的需求是:運用鍵盤控制人(角色)移動。人有三點血量,要走出山洞。山洞的不同地方有石頭阻擋(舞臺),還有四個怪物(角色)來回巡邏。不能碰到怪物。碰到怪物,扣一滴血。直到血量扣為零,失?。▌幼鳎?。
……
需求分析能幫助學(xué)生搞清楚自己要創(chuàng)作的作品有哪些需要,可以給學(xué)生指明思考的方向。有了方向,學(xué)生的想象力就能在正確的道路上不斷馳騁。學(xué)生是課堂的主體,教師是課堂的引導(dǎo)者。每一個學(xué)生在需求分析下都能有自己的設(shè)計方向。這樣才能充分調(diào)動學(xué)生的學(xué)習(xí)積極性,從不會說到會說,從不會想到會想。
學(xué)習(xí)的最終目的是應(yīng)用。模仿是學(xué)習(xí)的起點,而帶有創(chuàng)意的創(chuàng)作才是最終的目標(biāo)。學(xué)生需要學(xué)會運用已有的知識結(jié)合自己的創(chuàng)意發(fā)揮來創(chuàng)作出自己的作品。學(xué)生需要教師的引導(dǎo),也需要教師提供更多的機會來挖掘和展示自己的潛能。這是為未來培養(yǎng)合適的人才。
三、Scratch進(jìn)階二:創(chuàng)客學(xué)習(xí)
作為進(jìn)階學(xué)習(xí),如何體現(xiàn)程序與日常生活的聯(lián)系,能將屏幕上虛擬的東西與現(xiàn)實世界連接起來,這是一種價值的訴求。創(chuàng)客學(xué)習(xí)能幫助實現(xiàn)這一訴求。學(xué)生通過創(chuàng)客學(xué)習(xí)、通過動手實踐,以及借助信息技術(shù)能把各種創(chuàng)意轉(zhuǎn)變?yōu)楝F(xiàn)實。學(xué)生對親身體驗和動手實踐總是很感興趣的。創(chuàng)客學(xué)習(xí)活動可以激發(fā)學(xué)生的學(xué)習(xí)興趣,調(diào)動學(xué)習(xí)積極性,正是激發(fā)學(xué)生主動學(xué)習(xí)的一種很好的方式。
那創(chuàng)客學(xué)習(xí)怎么在Scratch進(jìn)階學(xué)習(xí)活動中體現(xiàn)呢?我們要關(guān)注兩個維度(圖9)。
[圖9 創(chuàng)客學(xué)習(xí)]
圖9 創(chuàng)客學(xué)習(xí)
(一)關(guān)注生活維度,感受現(xiàn)實價值
教師播放一段視頻:在高速公路上,有限速的標(biāo)準(zhǔn)。車輛超過限定的速度,有攝像頭進(jìn)行拍攝,交警部門會開出罰單。
教師播放另一段視頻:持有噪聲測試儀的工作人員,在馬路邊進(jìn)行噪音測試。噪音也是一種污染。利用噪聲測試儀,可以在工作現(xiàn)場、廣場等公共場所進(jìn)行噪聲檢測。
引導(dǎo)學(xué)生觀看并發(fā)現(xiàn):速度的快慢會被記錄在后臺,隨著車輛的經(jīng)過實時更新;噪音的大小也會被顯示在監(jiān)測的顯示屏上,隨著周圍音量的變化動態(tài)更新。由此激發(fā)學(xué)生的興趣:這是運用了什么樣的技術(shù)?和我們現(xiàn)在學(xué)習(xí)的編程有關(guān)系嗎?
出示例子《看,聲音的樣子》:通過音量值的變化,小貓的行走路線發(fā)生改變(圖10)。
[圖 10 《看,聲音的樣子》舞臺呈現(xiàn)]
圖 10 《看,聲音的樣子》舞臺呈現(xiàn)
編程程序如下(圖11)。
圖11 《看,聲音的樣子》編程實例
(二)關(guān)注信息維度,虛擬轉(zhuǎn)為現(xiàn)實
1.利用知識遷移,學(xué)習(xí)新知
知識遷移是學(xué)生要掌握的一種重要的能力。學(xué)生要學(xué)會觀察利用新舊知識之間的聯(lián)系,進(jìn)行新舊知識之間的對照,從而對原有知識進(jìn)行遷移,學(xué)會新知識,領(lǐng)會新知識,運用新知識。
小試驗:將耳機插入計算機的接口,對著麥克風(fēng)錄制(圖 12)。用不同的音量說話。
圖12
學(xué)生觀察后發(fā)現(xiàn),音量不同的時候,計算機界面上會出現(xiàn)不同的變化(圖13,圖14)。
圖13
圖14
在Scratch里有一組命令可以實現(xiàn)類似的效果。在Scratch1.4版本里,如:音量值。在Scratch2.0版本里,如:響度,攝像頭偵測。以音量值為例。為了感知麥克風(fēng)的信號,需要利用“偵測”面板中的“音量值”變量。這一變量可以直觀地反映麥克風(fēng)音量的大小,取值范圍是0到99。有了這條命令,學(xué)生就可以利用它編程,讓舞臺上的角色隨著音量值的改變而產(chǎn)生各種變化。
師:我們怎么結(jié)合“迷宮游戲”進(jìn)行創(chuàng)作?
生1:我可以用音量改變角色的大小。
生2:我可以用音量改變角色的顏色。
生3:我可以用音量切換舞臺。
生4:我可以把音量和其他命令組合起來使用。
……
師:同學(xué)們很會發(fā)現(xiàn)。任取其中一條,如我們可以使用音量來控制角色的行走,但是具體的控制方法還是多樣的。比如可以將角色的縱坐標(biāo)直接設(shè)為音量值經(jīng)過算術(shù)變換的值,也可以判斷音量值大于某個值時上升或下降。期待大家更多的實踐。
體驗加上互動,對學(xué)生現(xiàn)實感受進(jìn)行了沖擊。學(xué)生的興趣完全被調(diào)動起來。利用現(xiàn)有的任務(wù)和素材,生成個性創(chuàng)作,深刻體驗虛擬與現(xiàn)實的融合。這一次的設(shè)計嘗試?yán)名溈孙L(fēng)作為輸入,設(shè)計創(chuàng)作“迷宮游戲”。從創(chuàng)作的過程可以體會到,一個滲透創(chuàng)客精神的游戲可以給一個原本普通的游戲增添更多的樂趣。這里提到的響度、攝像頭偵測等功能,在只要是配置了耳麥和攝像頭的計算機上都可以進(jìn)行應(yīng)用。另外,在這個基礎(chǔ)上,Scratch還可以外接測控傳感器以及Arduino機器人來實現(xiàn)對虛擬與現(xiàn)實更加深入的探究。
2. 基于現(xiàn)實生活,打開思路
科學(xué)技術(shù)是第一生產(chǎn)力。科技進(jìn)步與創(chuàng)新是推動經(jīng)濟(jì)和社會發(fā)展的決定性因素。創(chuàng)客學(xué)習(xí)活動關(guān)注在現(xiàn)實生活中的實際運用。希望小創(chuàng)客們能夠打開思路,提出更多能與生活相融合的設(shè)計思路,創(chuàng)作出更多的創(chuàng)客作品。
師:在前面的視頻里提到,在高速公路上,有限速的標(biāo)準(zhǔn)。車輛超過限定的速度,有攝像頭進(jìn)行拍攝,交警部門會開出罰單;持有噪聲測試儀的工作人員,在馬路邊進(jìn)行噪音測試。在現(xiàn)實生活中,還有哪些關(guān)于這方面的應(yīng)用?
生1:我想做可以模仿在屏幕上切水果的體感游戲。Scratch2.0新增了視頻偵測功能和克隆功能。當(dāng)我揮動手臂時,攝像頭能捕捉到我的動作。正好切到水果的時候,水果完整造型切換到破裂造型,看上去是被切開的形狀。
生2:我們小區(qū)的樓道里有安裝感應(yīng)燈。我想和這個應(yīng)該有關(guān)系。我可以設(shè)計根據(jù)音量的響度,讓白熾燈進(jìn)行明暗的變化。音量達(dá)到一定的量,燈亮,否則,不亮。
生3:我想設(shè)計一個小貓儲蓄罐。當(dāng)我把硬幣放在儲蓄罐上,儲蓄罐里的小貓就會伸出手來,拿走我的硬幣并發(fā)出“喵”一聲的貓叫。
生4:我也有個儲蓄罐。當(dāng)我投幣時,我的變形金剛儲蓄罐會發(fā)出興奮的聲音并且能有姿勢的比畫。
……
創(chuàng)客學(xué)習(xí)活動基于項目學(xué)習(xí),既讓學(xué)生進(jìn)行現(xiàn)實體驗,又培養(yǎng)學(xué)生的創(chuàng)新思維,把學(xué)生的好奇心和創(chuàng)造力極大地調(diào)動起來。在Scratch課堂里,采用進(jìn)階學(xué)習(xí)方式,讓學(xué)生進(jìn)行創(chuàng)意與創(chuàng)客的學(xué)習(xí)活動。在“自主、探究”建構(gòu)學(xué)習(xí)的理念下,發(fā)揮學(xué)生的好奇心和想象力,培養(yǎng)學(xué)生的創(chuàng)造力;使學(xué)生勇于提出新的觀點和設(shè)想,并在理性分析判斷后,可以使之實現(xiàn)。
陶行知先生曾說過:“處處是創(chuàng)造之地,天天是創(chuàng)造之時,人人是創(chuàng)造之人?!眲?chuàng)新是當(dāng)今時代的關(guān)鍵詞,而創(chuàng)客是新時代對人才的迫切需求。希望,Scratch進(jìn)階學(xué)習(xí)活動能早日在更多的中小學(xué)中進(jìn)行推廣。
(浙江省杭州市賣魚橋小學(xué) 310000)