徐梧
摘要:在高中信息技術(shù)必修模塊《信息的編程加工》教學(xué)中,運用Blockly迷宮游戲可以幫助學(xué)生輕松地打開編程學(xué)習(xí)的大門。該文從應(yīng)用意義到課堂實踐,闡述了在編程入門教學(xué)中,如何運用Blockly迷宮游戲激發(fā)學(xué)生的學(xué)習(xí)興趣、發(fā)展思維能力,滿足學(xué)習(xí)需要,以期為程序設(shè)計啟蒙教學(xué)帶來一些啟示和思考。
關(guān)鍵詞:高中信息技術(shù);Blockly迷宮游戲;編程
中圖分類號:TP3? ? ? ? 文獻標(biāo)識碼:A
文章編號:1009-3044(2019)17-0099-03
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
Blockly Games是一款基于Blockly可視化編程工具開發(fā)的程序設(shè)計教育游戲。在高中信息技術(shù)課程必修模塊《信息的編程加工》教學(xué)中,利用Blockly Games中的迷宮游戲可以激發(fā)學(xué)生學(xué)習(xí)程序設(shè)計的興趣,發(fā)展思維能力,滿足編程入門學(xué)習(xí)的需要。
1 在教學(xué)中運用Blockly迷宮游戲的意義
1.1 激發(fā)學(xué)生的學(xué)習(xí)興趣
走迷宮是學(xué)生們非常熟悉的一種益智游戲,但Blockly迷宮游戲是用程序控制玩家走迷宮,學(xué)生們沒有體驗過。新鮮的游戲方式、富有挑戰(zhàn)性的游戲內(nèi)容以及游戲帶來的快感,容易激發(fā)起學(xué)生的學(xué)習(xí)興趣和熱情,從而開啟愉快的學(xué)習(xí)之旅。
Blockly迷宮游戲的規(guī)則是利用每個關(guān)卡提供的語句模塊在編程區(qū)拼接,構(gòu)成一個小程序,使得程序運行時起點處的玩家能夠順利到達終點,一關(guān)才算通過。獲得成功的目標(biāo),激勵著學(xué)生積極地思考、主動學(xué)習(xí)編程知識和闖關(guān)技巧,不斷挑戰(zhàn)更高級的迷宮任務(wù),直到取得勝利。
1.2 讓學(xué)生在解決問題中發(fā)展思維
Blockly迷宮游戲環(huán)境為教師創(chuàng)設(shè)問題情境提供了條件。走法怎樣設(shè)計,如何用程序控制實現(xiàn)是學(xué)生在完成迷宮任務(wù)時面臨的主要問題。具體到每層任務(wù),問題還可進一步細(xì)化。如,什么是計算機程序?玩家怎么知道要左轉(zhuǎn)?重復(fù)執(zhí)行哪些動作?需要用到什么程序結(jié)構(gòu)?越到高級關(guān)卡,問題越復(fù)雜,可能出現(xiàn)走法不同,程序有差別的情況,哪種走法更好,程序更精簡呢?學(xué)生在問題解決的過程中,需要運用歸納、分析、構(gòu)造、評價等思維。這些思維活動,都有助于發(fā)展學(xué)生的思維能力。
1.3 滿足編程入門教學(xué)的需要
Blockly迷宮游戲具有教學(xué)性。首先,蘊含豐富的編程基礎(chǔ)知識,能滿足學(xué)生編程入門學(xué)習(xí)的需要。如,計算機程序和算法的概念、三種基本程序結(jié)構(gòu)及應(yīng)用。利用Blockly迷宮游戲展開教學(xué)內(nèi)容,流暢而有效。從獨立完成初級迷宮后學(xué)生能解釋“什么是計算機程序”,與老師交流中明白自己編的就是“順序結(jié)構(gòu)”的程序,到分析中級迷宮時,遇到需要“循環(huán)結(jié)構(gòu)”解決的情況,再到解決高級迷宮問題時,“分支結(jié)構(gòu)”的運用,最后到歸納出編程解決問題的一般過程。每一個教學(xué)內(nèi)容的適時出現(xiàn),既增長了學(xué)生們的知識又解決了他們的認(rèn)知沖突,滿足了他們編程學(xué)習(xí)的需要。其次,Blockly編程采用的是積木式圖形化模塊,和其他傳統(tǒng)的編程工具相比,摒棄了生澀、繁雜的代碼和語法,將封裝了程序代碼的語句模塊拼搭構(gòu)成程序。直觀的編程語言,消除了學(xué)生對程序設(shè)計的畏難情緒,能讓他們快速地融入編程學(xué)習(xí)中,不用糾纏于代碼和語法的錯誤,而能將更多的精力用在算法設(shè)計和程序結(jié)構(gòu)的搭建上。
2 運用Blockly迷宮游戲的教學(xué)設(shè)計
2.1 基于學(xué)情合理組織教學(xué)內(nèi)容
Blockly迷宮游戲共有10級,針對本校高一學(xué)生編程零基礎(chǔ)的情況,選擇前9級為課堂教學(xué)內(nèi)容,最有難度的第10級留給學(xué)生進行課后拓展。教師通過分析每個關(guān)卡游戲內(nèi)嵌的編程知識,將整節(jié)課的教學(xué)內(nèi)容編排為三部分:初級篇(程序的概念和順序結(jié)構(gòu))、中級篇(循環(huán)結(jié)構(gòu))、高級篇(分支結(jié)構(gòu)和三種基本結(jié)構(gòu)的組合應(yīng)用)。教學(xué)內(nèi)容的組織遵循了由易到難,先單一后綜合的原則,適合學(xué)生循序漸進地學(xué)習(xí)編程基礎(chǔ)知識。
2.2 設(shè)計有序的學(xué)習(xí)活動
利用Blockly迷宮游戲教學(xué)要有序地安排好學(xué)習(xí)活動,避免學(xué)生出現(xiàn)重過關(guān)輕思維的情況。游戲的競爭性使得學(xué)生一般比較關(guān)注能否過關(guān),面對迷宮,習(xí)慣直接拼搭語句塊,通過試錯和調(diào)整模塊解決問題,缺乏先分析、設(shè)計再解決的意識。而教師應(yīng)更多地關(guān)注學(xué)生解決問題的過程而不是結(jié)果。為了培養(yǎng)學(xué)生的思維能力,教師可以引導(dǎo)他們按以下的步驟開展學(xué)習(xí)活動:①觀察路線、設(shè)計走法;②互動表達、學(xué)習(xí)新知;③編程實現(xiàn)、調(diào)試運行;④評價交流、優(yōu)化改進。在活動過程中,教師指導(dǎo)和鼓勵學(xué)生采用獨立思考、分組競賽、集體交流、小組互助等多種形式開展學(xué)習(xí),完成迷宮任務(wù)。通過學(xué)習(xí)方法的引領(lǐng),學(xué)生在遇到高級迷宮問題時,自然會先思考走法,并根據(jù)需要描述出來,再利用語句塊編程實現(xiàn)。
2.3 提供合適的學(xué)習(xí)工具
為了幫助學(xué)生在以Blockly迷宮游戲為主線的學(xué)習(xí)活動中獲得成功的體驗,教師可以提供合適的學(xué)習(xí)工具。例如,學(xué)習(xí)任務(wù)單、“畫程軟件”。用任務(wù)單引導(dǎo)學(xué)生進行學(xué)習(xí),可以為學(xué)生提供學(xué)習(xí)的支架,讓他們清楚要學(xué)什么和怎樣學(xué)。而指導(dǎo)學(xué)生使用“畫程軟件”繪制流程圖,可以幫助學(xué)生更清晰地描述自己走迷宮的想法,為編程實現(xiàn)助力。
2.4 增強課堂互動交流
交流與互動是構(gòu)建教學(xué)的關(guān)鍵。在Blockly迷宮游戲教學(xué)中,教師需要提供足夠的機會讓學(xué)生多表達,并鼓勵全體學(xué)生參與交流,共同點燃思維的火花。增強課堂交互的途徑有:教師設(shè)問、小組討論、學(xué)生提問、展示交流。為了使互動更有效,教師設(shè)計的問題應(yīng)精準(zhǔn)、適切。在提問之后,要留出一定的時間讓學(xué)生獨立思考或小組討論。組織學(xué)生小組討論時,教師要求組內(nèi)每個成員都要發(fā)言,并認(rèn)真傾聽同伴的想法,針對問題交換意見。請學(xué)生回答時,教師要善于引導(dǎo)和追問,并注意調(diào)動學(xué)生回答問題的積極性。同時,盡量選擇分布在不同位置的學(xué)生回答問題,增強他們的課堂參與感。在互動過程中,如果有學(xué)生提出疑問,教師應(yīng)給予肯定并及時解答,也可啟發(fā)其他學(xué)生來解答。在進行全班展示和交流的時候,教師可以讓學(xué)生自薦或他薦,一來增強他們的學(xué)習(xí)自信,二來活躍課堂氣氛。當(dāng)學(xué)生在展示,教師應(yīng)帶領(lǐng)其他學(xué)生耐心聆聽、仔細(xì)瀏覽,學(xué)會欣賞,并在之后給出積極客觀的評價。
3 教學(xué)片斷
3.1 片段一:游戲?qū)?/p>
播放歡快的背景音樂,呈現(xiàn)9級迷宮圖片。
師:我們這節(jié)課的任務(wù)就是利用Blockly迷宮游戲每個關(guān)卡提供的語句模塊在編程區(qū)拼接,構(gòu)成一個小程序,使得程序運行起來時起點處的玩家能夠順利到達終點。
【效果評價】
創(chuàng)設(shè)輕松的游戲情境,從學(xué)生熟悉的走迷宮游戲?qū)耄槃輶伋鲇刑魬?zhàn)性的課題,有效地激發(fā)了學(xué)生的學(xué)習(xí)興趣,順利進入新課學(xué)習(xí)。
3.2 片斷二:中級篇之走法設(shè)計
師:中級關(guān)卡有3級。
生:因為路線是直線向前,所以小人一直向前移動就行。
師:也就是重復(fù)執(zhí)行向前移動,直到終點?
生表示同意。
師:這種情況可以用循環(huán)結(jié)構(gòu)。凡是需要通過不斷重復(fù)執(zhí)行才能解決的許多問題中需要用到循環(huán)控制。循環(huán)執(zhí)行,直到條件滿足。例如:打印50份資料,跑800米。
[4級]
師:4級需要用到循環(huán)結(jié)構(gòu)嗎?
生:需要
師:重復(fù)執(zhí)行的動作是什么?
生:向前移動—左轉(zhuǎn)—向前移動—右轉(zhuǎn)
師:循環(huán)的條件是什么?(什么情況下,循環(huán)結(jié)束?)
生:到終點
師:條件不滿足時,重復(fù)執(zhí)行動作;條件滿足,循環(huán)停止執(zhí)行。
[5級]
師:在這個關(guān)卡,先要怎么走,然后呢?
生:先順序執(zhí)行“向前移動—向前移動—左轉(zhuǎn)”;再循環(huán)執(zhí)行“向前移動”直到終點。
【效果評價】
第一,利用分組競賽的形式,增強了學(xué)生的競爭意識,有效激勵學(xué)習(xí)。課堂上,學(xué)生積極思考,踴躍發(fā)言。
第二,通過分組活動和教師引導(dǎo),學(xué)生逐步形成了先分析問題、設(shè)計方法再編程解決的意識和習(xí)慣。
第三,將新知識的學(xué)習(xí)鑲嵌在一定的問題情境中,隨著問題的出現(xiàn),自然引出,學(xué)生既樂學(xué)也易學(xué)。
3.3 片段三:高級篇之成果交流
請學(xué)生先語言描述走法或展示流程圖,再呈現(xiàn)程序。
[8級]
師:思路不同,程序的精簡程度也不同。比一比哪種程序更精簡、高效?
生:第一種和第三種的程序少了一個判斷,更精簡些。第一種的走法可能更高效。因為,一開始的路線是直的,所以,小人可以先向前移動再接著判斷是向左轉(zhuǎn)還是向右轉(zhuǎn)。
師:分析得有道理??梢灾苯訄?zhí)行的就無須判斷,哪個動作最可能發(fā)生的就先執(zhí)行。
[9級]
師:9級的走法有多種,歡迎大家來展示。
生1:
其他學(xué)生評價:雖然成功了,但走法有些繞,基本上把路都走了一遍。
師:其實,9級迷宮較好的一種走法就是課的開始同學(xué)畫的。編程時,關(guān)鍵點是怎么才能讓玩家在遇到第二個左轉(zhuǎn)路口時不左轉(zhuǎn)而是直行?
生2:通過判斷“如果前面有路,就向前移動,否則向左轉(zhuǎn)”。
(展示流程圖和程序)
【效果評價】
第一,請學(xué)生展示時,他們表現(xiàn)自信,愿意表達出自己的解決思路,展示成果。面對建議,他們也能虛心接受。
第二,通過成果交流,引導(dǎo)學(xué)生比較程序的精簡和效率,既讓學(xué)生認(rèn)識到算法設(shè)計的重要性又幫助其形成優(yōu)化程序的意識。
4 教學(xué)反思
希望給學(xué)生帶來怎樣的編程入門學(xué)習(xí)?我的答案是有趣、快樂、有意義。有趣是吸引學(xué)生學(xué)習(xí)的外在形式,快樂是學(xué)生保持學(xué)習(xí)熱情的源泉,有意義是滿足學(xué)生學(xué)習(xí)需要的保證?;谝陨系南敕?,我選擇Blockly迷宮游戲作為編程入門教學(xué)的資源。課堂上,學(xué)生們專注投入,主動積極;下課了,學(xué)生們戀戀不舍,還想著如何解決十級迷宮。實踐表明,迷宮游戲的趣味性、編程闖關(guān)成功帶來的愉悅感、豐富的編程基礎(chǔ)知識、友好有效的課堂互動,讓學(xué)生收獲到了學(xué)習(xí)編程的快樂和知識的滿足。通過本節(jié)課的實施,也讓我對如何持續(xù)激發(fā)學(xué)生的學(xué)習(xí)興趣、發(fā)展學(xué)生的計算思維產(chǎn)生了新的思考。
5 結(jié)束語
從筆者的課堂實踐來看,Blockly迷宮游戲可以幫助學(xué)生輕松地打開編程學(xué)習(xí)的大門,為后續(xù)的程序設(shè)計學(xué)習(xí)奠定良好的基礎(chǔ)。關(guān)于Blockly Games中其他游戲資源的教學(xué)應(yīng)用,以及如何利用Blockly編程工具開發(fā)校本教學(xué)資源,還有待教師進行更多的實踐和探索。
參考文獻:
[1] 章潔. 游戲教學(xué)法在小學(xué)英語中的運用研究[D]. 武漢: 華中師范大學(xué), 2014.
[2] 潘悅驊. 游戲教學(xué)法在初中信息技術(shù)教學(xué)中的應(yīng)用[J]. 中小學(xué)電教,2017(6):22-24.
[3] 林勤. 思維的躍遷:高階思維能力的培養(yǎng)及教學(xué)方式[M]. 上海: 華東師范大學(xué)出版社, 2016.
【通聯(lián)編輯:代影】