張芳菲
[摘 要]文章以五年級《克隆飛機大戰(zhàn)》教學為例,以Scratch搭建平臺,結(jié)合小學生的邏輯思維發(fā)展特點、認知特點、已有的認知水平及生活經(jīng)驗,探討如何通過編程來設(shè)計游戲,如何在課堂教學中關(guān)注學生信息核心素養(yǎng)的培養(yǎng)、計算思維能力的提升,從而為后續(xù)Scratch編程教學及培養(yǎng)學生的編程興趣奠定基礎(chǔ)。
[關(guān)鍵詞]Scratch;計算思維;程序;克隆;核心素養(yǎng)
[中圖分類號] G43 [文獻標識碼] A [文章編號] 1007-9068(2022)09-0088-03
案例:《克隆飛機大戰(zhàn)》
一、前端分析
(一)教材分析
《克隆飛機大戰(zhàn)》是蘇科版小學信息技術(shù)教材五年級上冊第12課的內(nèi)容,是學習Scratch基礎(chǔ)部分的延續(xù),旨在讓學生認識和理解“克隆”控件,為后面獨立設(shè)計程序打下基礎(chǔ)。
教學目標:認識與理解“克隆”控件;掌握利用“克隆”控件控制角色變化的方法;通過使用“克隆”控件,掌握多個角色相同動作的實現(xiàn)方法;通過使用“克隆”控件,感受編程的樂趣。
教學重點:認識與理解“克隆”控件。
教學難點:掌握利用“克隆”控件控制角色變化的方法。
預計課時:1課時
(二)學情分析
在本節(jié)課教學之前,學生已經(jīng)掌握了使用條件語句、循環(huán)語句以及偵測、外觀、動作等模塊,還未涉及“克隆”控件,更不知如何使用。學生有復制角色的直覺思維,而這節(jié)課旨在提升學生的計算思維能力,即解決問題的能力,復制雖然也可以實現(xiàn)無數(shù)架飛機,但是會使程序冗長,而克隆就簡化了解決問題的步驟?!胺治隹赡艿慕鉀Q方案,找到最有效的方案,并且有效結(jié)合這些步驟和資源?!边@是國際教育技術(shù)協(xié)會和計算機科學教師協(xié)會于2011年給計算思維做的可操作性的定義中提到的。
二、教學設(shè)計
(一)體驗游戲——激趣導入
1.教學實錄
(課前播放空戰(zhàn)短片)
師:同學們,你們玩過“飛機大戰(zhàn)”這個游戲嗎?想不想體驗一下?現(xiàn)在請打開桌面的飛機大戰(zhàn)游戲,玩一玩吧!
師:好不好玩?今天我們就來一起制作一個“飛機大戰(zhàn)”的游戲?。ò鍟?/p>
2.過程解析
激趣導入,讓學生對本節(jié)課的學習內(nèi)容充滿期待。課始,通過感知游戲,直接引出課題。
(二)分析游戲——了解規(guī)則
1.教學實錄
師:請思考并介紹在這個游戲中,這兩個角色分別有哪些行為事件?(多媒體出示,如下)
火炮:會開火,左右鍵控制轉(zhuǎn)向。
飛機:多架,不斷下落,碰到火焰即爆炸并消失,到底部自動消失。
2.過程解析
通過問題,讓學生產(chǎn)生對游戲規(guī)則的思考,及對兩個重要角色的認知。
(三)分析游戲——完成飛機
1.教學實錄
師:請大家打開桌面的“飛機大戰(zhàn)”文件?,F(xiàn)在只有一架飛機,玩“飛機大戰(zhàn)”游戲,一架飛機夠嗎?那該怎么辦呢?
生:復制很多個角色,可以克隆……
(1)多架飛機
師:如果復制很多個飛機角色,我們的工作量會很大,程序也會變得冗長。在控制模塊里,有一個“克隆”(板書)功能,它可以讓角色實現(xiàn)分身效果,也可以極大簡化程序。(PPT出示“克隆”的定義)
師:請大家嘗試讓飛機在點擊綠旗后不斷分身為無數(shù)架飛機。
(教師巡視,演示典型問題,請學生解決)
師:為什么看不到克隆體飛機?
生:原位分身,在本體背后。
師:當克隆體飛機產(chǎn)生的時候,它們的位置應(yīng)該是怎樣的?有什么規(guī)律嗎?
生:舞臺最高處隨機出現(xiàn)。
師:角色的位置由坐標決定,你能用坐標來表述如何實現(xiàn)克隆體飛機的定位嗎?
生:x:-240~240,y:180。
師:請嘗試設(shè)計克隆體飛機產(chǎn)生后的定位程序。
(教師巡視,演示典型問題,請學生解決)
(2)向下飛行
師:現(xiàn)在飛機還需要做什么?
生:不斷向下飛行。
師:結(jié)合坐標思考,向下飛行意味著改變什么?
生:高度改變,y減小。
師:請嘗試完成飛機不斷向下飛行的程序。
(教師巡視,演示典型問題,請學生解決)
2.過程解析
回顧課前的導入環(huán)節(jié),查找對比目前還沒有實現(xiàn)無數(shù)架飛機效果的原因,引出對實現(xiàn)無數(shù)架飛機效果的需求。闡明“克隆”在計算思維中的重要意義,及其與直覺思維的區(qū)別,體現(xiàn)對計算思維的要求,讓學生自主探究“克隆”的用法。在試誤后,再聚焦克隆體的定位問題,符合學生的認知特點和心理需求。課堂上及時捕捉學生的問題資源,并將其還給學生,再讓學生來解決,體現(xiàn)學生的學習主體地位。這樣通過坐標的復習與運用,為后續(xù)幾次程序設(shè)計作鋪墊。通過知識的遷移,讓學生自主探究飛機的定位程序。這可能會涉及x范圍的縮小問題,看學生的學習情況和需求而定。坐標問題的第二次遷移,y的改變讓學生自主探究,這是對坐標的二次強化。
(四)直面bug——完善程序
1.教學實錄
師:目前,火炮和飛機各自的基本動作已經(jīng)完成,大家看看有什么問題?
生:有一架飛機不動,飛機到舞臺底部會堆積。
(1)本體滯留bug
師:知道這架不動的飛機是哪一架嗎?請大家猜一猜。
生:本體。
師:看看腳本區(qū)的程序,我們?nèi)绾翁幚硭?/p>
生:隱藏。
(教師巡視,演示典型問題,請學生解決)
師:克隆體也不見了,再看看程序,如何解決?
生:克隆體顯示。
(教師巡視,演示典型問題,請學生解決)
(2)底部堆積bug
師:我們希望克隆體飛機到達底部后消失,也就是刪除本克隆體。那么,怎么判斷到達了底部呢?嘗試結(jié)合前面提到的坐標(y=-180時)來思考。
師:請嘗試解決底部堆積的問題。
(教師巡視,演示典型問題,請學生解決)
2.過程解析
到這一步,飛機和火炮的基本動作已經(jīng)設(shè)置完成,學生會直觀地發(fā)現(xiàn)畫面中出現(xiàn)的bug,這時及時解決,體現(xiàn)學生的學習主體地位。把問題和矛盾拋給學生,讓學生在發(fā)現(xiàn)問題、解決問題、再發(fā)現(xiàn)問題、再解決問題的過程中,提升計算思維能力。第二個bug是一個關(guān)鍵點,用這個bug教結(jié)構(gòu),因為邏輯結(jié)構(gòu)關(guān)聯(lián)且相似,到下個擊中環(huán)節(jié)就是用結(jié)構(gòu)。學生會用“隱藏”來實現(xiàn)“消失”,但很快就會發(fā)現(xiàn)游戲畫面越來越卡,并且當克隆體超過300個就停止克隆,畫面中不再有飛機出現(xiàn)。這時及時強調(diào)刪除本克隆體,并介紹兩者的區(qū)別。
(五)飛機大戰(zhàn)——爆炸消失
1.教學實錄
師:如果碰到火焰紅色,飛機就會爆炸,隨后消失不見。我們曾經(jīng)用過類似的判斷嗎?(迷宮游戲)
師:誰來說一說自己的思路?(生答略)
師:請大家完成飛機擊中后炸毀的程序吧!
(游戲開始飛機就已是爆炸狀態(tài))
(教師巡視,演示典型問題,請學生解決)
2.過程解析
用結(jié)構(gòu),遷移舊知,通過游戲引發(fā)學生共鳴,再次自主探究,體現(xiàn)學生的學習主體性。如果游戲開始飛機就是炸毀狀態(tài),就順應(yīng)介紹編程的習慣,初始狀態(tài)的設(shè)定。如果暫時沒有出現(xiàn),就從青蛙過河和迷宮游戲引導,提醒學生編程的嚴謹性,幫助建立良好的編程習慣,避免留bug。
(六)總結(jié)拓展——開放式延伸
1.教學實錄
師(總結(jié)延伸):今天你學會了什么程序?讓你設(shè)計一個游戲的話,可以怎么做?第一步,第二步,第三步……
師(作業(yè)設(shè)計):還有什么希望能在游戲中實現(xiàn)的?如增加boss飛機或障礙角色,并使用克隆,給游戲增加難度。
2.過程解析
這個環(huán)節(jié)旨在反思梳理,內(nèi)化知識。作業(yè)設(shè)計是擊中爆炸的延伸,既檢驗了學生對“克隆”的理解,也是對使用“克隆”的強化。同時,檢驗學生在游戲設(shè)計中解決問題的能力,即計算思維能力的檢驗。
三、教學反思
“克隆”本身就是一個很前沿的詞匯,它源自生物學對物種的完全復制,本體和克隆體從外表到DNA都是完全相同的。學生對于“克隆”的認知可能僅僅是復制一個已有的角色,再粘貼出一個一模一樣的角色。然而,克隆出來的角色通過程序的編寫,也可以實現(xiàn)不一樣的狀態(tài),如從不同位置出現(xiàn)、不同的特效等。本體和克隆體的程序可以獨立編寫,并且它們都存在于同一個角色中。本體甚至可以隱藏起來,我們往往要使用的是克隆體,這也是這節(jié)課學生能感知體會到的?!翱寺 笨丶膶W習,讓學生編寫復雜程序的能力進一步得到提升,為編寫復雜程序打下良好的基礎(chǔ)。當然,在這個過程中,“克隆”也只是對于Scratch中控件的廣度學習。為什么要學習“克隆”,而不是用復制角色的辦法,這里蘊含著信息意識、計算思維等信息核心素養(yǎng)。優(yōu)化是學習編程,或者說解決問題的辦法的更優(yōu)選擇。提升計算思維能力,采用更合適、更優(yōu)的解決辦法,這是我們要培養(yǎng)學生的信息核心素養(yǎng)。