王秋飛
《算法程序設計》課程是高中信息技術的核心課程,以后專業人才培養核心崗位所具備的知識和技能都離不開本課程的學習。面對學程序難這一難題,我采取了游戲教學,游戲教學是結合“游戲“和”教學”為一體的一種寓教于樂的教學方式。結合程序設計課程中的特點,對游戲教學在程序設計課程中應用進行探討,取得較好的教學效果,希望對教學起到一定的參考借鑒作用。
2017年7月,國務院印發了《新一代人工智能發展規劃》,其中提到建議實施全民智能教育項目,在中小學階段設置人工智能相關課程,逐步推廣編程教育,鼓勵社會力量參與寓教于樂的編程教學軟件、游戲的開發和推廣。在中學階段設置人工智能相關課程、逐步推廣編程教育、建設人工智能學科,培養復合型人才,形成我國人工智能人才高地,中學階段學習編程是必然的趨勢,也是青少年人才發展的必然。
《算法與程序設計》是高中信息技術課程中的一個選修模塊,課程目標是培養學生分析問題、并運用所學知識設計程序從而解決問題的能力。在基礎教育階段,“算法與程序設計”教學的關鍵是要幫助學生建構這種認知結構, 而不是注重學生掌握多少具體的語法知識與編程技巧,進一步的目標在于提升學生的信息素養,為其終身發展奠定良好的基礎。
游戲教學法,顧名思義,就是以游戲的形式教學,使學生在輕松的氛圍中,在歡快的活動中,甚至在激烈的競爭中,不知不覺地學到教材上的內容,或者學到必須掌握的課外知識的教學方法。簡單地說,游戲教學法就是將“游戲”與”教學”兩者巧妙地結合在一起,從而引起學生學習興趣的教學方法。
在對“算法與程序設計”課堂上,游戲教學法的實施要嚴格按照“以學生為中心, 教師為主導”的原則來進行。首先,教師要明確本節課的教學目的,對于游戲應出現的環節,教師應明確該游戲的目的,并在設計游戲時結合教學內容,達到教學目標,防止因游戲法使用不當而造成浪費課堂時間的現象。其次, 教師要精心設計游戲內容,對在設計課堂游戲內容時要注意避免游戲環節繁瑣化。最后,教師要把握對課堂的掌控力,對層次不一和接受能力不一學生的課堂響應程度有充分的應變能力。
3.1 從簡單程序入門,激發學生興趣
傳統教學講解算法和計算機解決問題一般步驟,我們會拿人解決問題作為引入,我們先是舉個例子,今有物不知其數,三三數之余二,五五數之余三,七七數之余二,問物幾何?求解方法一:逐個數去試;求解方法二:運用最小公倍數知識。我們人解決問題的過程先觀察、其次分析問題,最后根據已有知識經驗進行判斷、推理,嘗試按一定方法和步驟去解決問題。于是就引入了算法和計算機解決問題的步驟。這樣的引入學生對算法的概念還是停留在數學的解題方法,對計算機的解決問題的基本過程還是很模糊。幾年來我們上程序設計第一課講算法和計算機解決問題的基本過程,一節課下來學生云里霧里,腦海中就是《算法與程序設計》這門課高深莫測。
針對此現象今年上這門課,我換了一種教學模式,用風靡全球的CodeMonkey進行引入,這里簡單介紹下這款游戲,CodeMonkey是一款在線編程教育課程、闖關模式的編程游戲。游戲的主角是一只猴子,它最愛的香蕉被強壯的猩猩搶走,而游戲的目標是幫助猴子奪回香蕉。我告訴同學們猴子要吃到香蕉我們必須要有猴子去吃香蕉的方法和步驟,如圖(1):
幫助猴子吃到香蕉寫的解決方案,這就是算法,學生一下子就明白過來,解題方法的精確描述這就是算法,接著我又問學生,你們看到猴子吃香蕉的畫面,首先要在腦海分析,其次寫出步驟,然后再寫代碼,運行代碼,如果錯了,繼續修改你的代碼,直到猴子吃到香蕉。于是引出計算機解決問題的基本過程:分析問題、設計算法、編寫程序、調試運行、檢測結果。學生在玩游戲過程中理解了什么是算法,計算機解決問題的基本過程是哪些。課后我去了解學生的掌握情況,學生都說易懂,清晰明了。后來我也用此在線游戲上了幾節課,發現效果不是一般的好,激發了學生學習程序的興趣,打開了編程之門。在游戲中,學生通過編程、發揮想象力通過一道又一道關卡,學生在闖關中由易到難得學習編程,不知不覺提升了編程能力。
3.2 從學生實際生活出發, 巧妙破解循環難題
教授不同班級,進行學情分析,因材施教,采用不同的教學方法,從而提高不同層次的學生水平。
今年我帶的是特長班,他們的數學底子薄,所以循環對他們來說很難理解,于是我把循環滲透到他們的美術專業上來,我展示了一張圖片,叫同學們自己在紙上畫出來,他們都把大致圖形畫出來,但是沒那么精準。我趁機引導,如果要電腦來畫怎么畫,于是我打開《我的世界》這個在線游戲,讓學生一試 (圖2) 。
學生很快就讓電腦畫出來,我告訴他們我們畫這個圖的時候運用到了循環,循環是程序中最為典型的結構,我們主要要找出循環體,讓程序變得更短,程序如圖3:
在教學過程中,我事先針對各層次、不同班級的學生設計不同的教學目標與練習,使得處于不同層的學生都能"摘到桃子",獲得成功的喜悅,很多老師都說不愿意帶特長班,因為他們太有個性,文化科知識又差,我通過游戲因材施教,這極大地改善了教師與學生的關系,從而提高師生合作、交流的效率,其次,教師在備課時事先估計了在各層中可能出現的問題,并做了充分的準備,使得實際施教更有的放矢、目標明確、針對性強,增大了課堂教學的容量。通過這一游戲教學法,極大提高課堂教學的質量和效率。
與傳統教學相比,游戲教學法充分調動了學習者的積極性,以學生為主,注重師生互動,注重學生思維和能力的培養,注重理論與實踐的結合,提高學習者的課堂參與度,使其在輕松的課堂氣氛中,在歡樂愉快的活動中,在激烈的競賽中,不知不覺地接受教師所傳授的知識。因此,本文從切身的教學實踐出發,總結出一些饒有趣味且易于操作的游戲教學法,并加以解釋與分析,旨在為《算法與程序設計》課堂教學提供一定的參考和借鑒。
(作者單位:河源市田家炳實驗中學)