尤作林

本文探討了小學圖形化編程的教學目標,提出教學安排,以游戲化項目式教學方法實現(xiàn) Python編程的圖形化編程教學,探索從 scratch 到 Python的過渡方法,對培養(yǎng)學生的思維能力及學習 Python的興趣具有積極作用。
Python當前在很多領(lǐng)域都應(yīng)用廣泛,基于 scratch 的圖形化編程是當前中小學學習 Python的重要方法,為了讓學生早期接觸 Python,培養(yǎng)計算機思維,可以采用 Python圖形化編程的方法,將編程細化為簡單、有趣的項目來學習。
教學目標
教學目標在于讓學生掌握使用 scratch 進行圖形化編程的能力,形成對 Python語法的認識,可以通過 Python進行簡單編程。就過程與方法上,通過教師講解先導知識,學生通過協(xié)助學習及自主探究的方式,形成對 Python的認識。在圖形化編程的過程中,增強對學習 Python的興趣。
教學安排
學習階段,需要掌握 scratch 圖形化編程軟件的操作方法,基于相關(guān)模塊來學習條件、循環(huán)等編程命令的使用。項目應(yīng)用階段為學生創(chuàng)作,目的在于提高解決實際問題的能力,如制作門鈴、樓道感應(yīng)燈和音樂盒等作品。
這幾個階段的難度逐漸增加、逐漸復雜,學習過程中隨著難度的增加及語句的復雜性不斷提高,學生可能會喪失對學習 Python的興趣,為了讓學生始終保持興趣,形成對Python編程的熱愛,需要教師采用游戲教學的方法來提高學生的學習積極性,通過學生動手操作及運行程序來得到成就感、滿足感。在教學內(nèi)容安排上,基于學生不同的年齡段安排符合其年齡、認知特點的內(nèi)容,隨著其年齡的增加,抽象程度也逐漸增高。
教學過程及設(shè)計
采用游戲化的項目式教學。設(shè)計教學情節(jié),例如小女孩為小朋友介紹前往 Python王國的方法(安裝 Python軟件);小蟒蛇帶領(lǐng)小朋友尋找新朋友,介紹使用 Python語言來通過電腦來進行交流;采用 Python程序計算水果總價;幫小動物畫五角星等。
借鑒學生以往采用 scratch 編程的經(jīng)歷,教師首先為學生提供成品 Python代碼,用模塊化、圖形化的方法來讓學生研究與討論,來了解代碼的作用與結(jié)構(gòu),弄明白代碼片段的意思,從提供的代碼中選擇片段進行拼接及調(diào)試,從而讓代碼正常運行。提前為學生講解程序的結(jié)構(gòu),說明核心代碼的作用,從而方便學生的學習。由于學生都已經(jīng)使用 scratch 進行過模塊化編程,因此這一方法學生容易理解,可以在短時間內(nèi)上手。
學習 Python時,引導學生在實際體驗、探索的過程中來學習。例如教師編寫“抽獎”小游戲的 Python代碼,讓學生先抽獎,在實踐過程中了解代碼的作用、程序的結(jié)構(gòu)。為學生提供編寫好的代碼,讓學生將整個代碼視作圖形來分析程序的結(jié)構(gòu),通過拼接來探索邏輯運算符的作用,幫助學生認識抽獎游戲的實質(zhì)。通過程序來模擬游戲化情境,為學生說明游戲的方法,比一比誰贏得最多,從而提高學生參與學習的熱情。對 scratch 案例進行分析,讓學生以自己熟悉的形式來認識抽獎程序的算法結(jié)構(gòu),從而自然地轉(zhuǎn)到 Python的學習。學習時復習隨機數(shù)的生成,為學生提供能從 1~9 中隨機生成整數(shù)的代碼,學生自行嘗試將代碼修改為從 1~3 中隨機生成整數(shù)的代碼。學生成功完成操作后,教師再次為學生展示代碼,講解抽獎活動的邏輯是生成隨機數(shù)并進行比較,從而判斷是否中獎及獎項,之后讓學生嘗試編寫該程序,如圖 1 所示。完成后教師提出具體要求“玩家有 100 枚硬幣,每次抽獎費用10 枚硬幣,當抽到一等獎、二等獎、三等獎時分別獎勵 30枚、20 枚、10 枚硬幣,繼續(xù)提供代碼,讓學生對代碼進行拼接,探索玩家中獎的概率。之后從商家角度來探討該如何優(yōu)化游戲才能提高自己的效益,如降低二等獎中獎概率、減少獎勵硬幣數(shù)量、增加抽獎所需硬幣數(shù)量等,從而讓學生認識到算法的重要性。學生成功嘗試后,教師可以為學生展示基于 Python 的智能算法并發(fā)放給學生,讓學生通過游戲認識到該算法如何讓玩家早期獲利,后期越玩越虧。
教學評價
教學評價包括了總結(jié)性評價及過程性評價??偨Y(jié)性評價發(fā)生于課堂結(jié)課時,學生完成綜合性作品或項目,教師對完成情況進行評價。過程性評價發(fā)生于學習過程中,由家長、同學、教師共同參與評價。
Scratch 軟件可以為小學生學習 Python帶來很大助力,通過圖形化編程來培養(yǎng)計算機思維,是一種行之有效的方式。基于 STEAM 理念的指導,采用游戲化的教學方法來讓Python課程的學習變得更加有趣,提高學生對編程的興趣。