姜 琪
著名計算機科學家周以真教授提出,計算思維是運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動。[1]隨著信息技術的迅速發展,“計算思維”正逐漸成為眾多教育學者研究的重點。作為信息技術教師,如何將抽象的計算思維在課堂中呈現出來并在課堂教學中培養學生的計算思維能力至關重要。
“暢學編程”是為低年級學生定制的計算機在線編程課程,其教學內容符合基礎教育的要求,可以系統化培養學生的計算思維。“暢學編程”一級課程相對簡單易學,包含指令、算法、程序控制、調試、循環、創建故事等內容。通過學習對應的課程,學生可初步創建計算機程序,用編程語言創建動畫故事、開發交互式游戲并分享到網絡學習平臺。通過具體的程序模塊搭建、程序調試和運行程序,學生的邏輯思維能力得到鍛煉,信息素養得到進一步提升。
本文以“暢學編程”一級課程為例,通過課堂上真實的學習交流讓思維可見,探索低年級高效的編程課堂,從而更好地培養低年級學生的計算思維能力,為后續學習編程課程打下了良好基礎。
根據江蘇省最新的信息技術課程改革通知,考慮到小學編程教學的基礎特點,筆者所在學校將“暢學編程”一級課程加入二年級信息技術課程。二年級的學生思維正處于具體運算階段,對圖形化、模塊化的編程課程更容易掌握。[2]
“循環”課程的教學目標是熟練掌握“循環指令”,用以簡化重復的程序動作;能夠創建一個循環單一類型的單個或多個指令任務;學會運用組合動作循環指令搭建程序;通過重復簡單的序列,創建藝術圖形;在闖關的過程中培養團隊意識、解決實際問題的能力;通過使用簡單的圖形和線條組合,提升對圖形排列的邏輯思維能力。
在低年級的信息技術課堂中,如何讓學生對編程語言有更深刻的認識很重要。單一的以闖關形式完成課堂任務對二年級的學生來說并不難,但無法深入培養計算思維能力。因此,筆者考慮將學生在課堂中的思考過程呈現出來,將思維可見化,從多維度引導學生,找到課程中解決問題的關鍵所在,生成更高效有趣的編程課堂。[3]
教師在教授第11課“江南·循環”之前,讓學生通過“重復做一件事”的游戲環節,了解什么是“循環”。學生對“循環”的初步認識是,一次又一次地做某件事或者多次重復一個動作,比如“跳繩時需要重復跳的動作”,“上樓梯時重復抬高腿邁步的動作”等。回到“江南·循環”這一教學內容,學生將認識一個新的指令“循環”,它是循環去做某一件事的指令。當課程內容進到第一關卡,學生確定了小魚和需要到達的荷葉位置后,使用方向指令完成闖關。第二關卡需要使用循環指令,學生學會確定小魚移動的方向和重復的次數,就可以將循環指令模塊插入“當運行時”的下方(數字代表指令重復的次數),再將方向指令模塊插入循環指令右側的凹槽處即可。學生通過對比多個單一方向的指令和循環指令的使用,確定了循環指令的作用——縮減煩瑣的重復指令。
第一關和第二關是非常基礎的內容,課堂上反饋闖關成功率達到100%,由此可以判斷學生能輕松掌握使用循環指令來簡化繁雜的單一方向指令。隨著關卡的增加,學習內容逐漸變難,對學生的思維挑戰也越來越大。以第四關、第五關、第七關的課程內容來進行大比拼,學生闖關的成功率逐漸降低,這時需要教師引導學生正確搭建程序。班級里總會有思維能力不錯的學生,教師可以請闖關成功的學生做小老師,將“小秘訣”分享給大家。同時,教師要把學生的語言信息轉化為可見的信息呈現給其他學生,也就是說把學生的思維方式通過指示箭頭呈現在黑板上,使每個學生都清晰地認識小魚到達荷葉的路程,這也會加深對程序設計的理解。
在第11課“江南·循環”課程內容的基礎上,第12課“松鼠·循環”這一課增加了新的動作指令(取得和種植),增添了編程課的趣味性。
在“松鼠·循環”這一課的學習中,許多學生沒有到達指定的位置就開始“取得松果”和“種植松樹”,導致在運行程序的時候報錯,那么教師需要適時引導學生明確方向指令的數量。經過第一關和第二關的基礎闖關練習,學生能夠很快掌握這一課的基礎知識,能夠自行觀察取得松果和種植松樹的數量,并按照闖關要求使用循環指令來完成任務。
經過練習,學生對這一課的內容已經不再陌生,可以放手自主探究練習。教師將準備好的教學微視頻分發到學生電腦,為學生提供相關的學習支持服務,以幫助有需要的學生進行有選擇性的課堂探究。由循環的“移動指令”和循環的“動作指令”相結合的循環指令是第一次學習。組合動作的循環簡化了復雜的指令,學生要在程序設計和程序調試的過程中學會動腦筋。
通過第11課和第12課的學習,學生對程序設計里的“循環”有了更深刻的認識。第13課“小畫家·循環”是對前兩節課的拓展練習,本節課結合了編程的邏輯性與藝術的創造性,使學生在學習編程的同時插上藝術的翅膀,開啟自由想象,進行個性化創作,從而把編程的思維運用到藝術、數學甚至生活的各個方面。
培養學生思維的靈活性是信息技術學科的重要目標之一。由江蘇省最新的信息技術課程改革可見,信息技術課程從一、二年級開始試點教學,低年級開展編程課也是為后面的學科學習做鋪墊。引導低年級學生掌握思考方式,能有效增強課堂的趣味性,從而提高教學效率。
在“暢學編程”循環課里,相同的課堂知識以不同的闖關形式展開,更有利于培養學生思維的多樣性和變通性。[4]通過3節課的學習,學生不斷變換思維,積極討論和交流,勇于挑戰和探索,在新的關卡中通過模塊搭建感受循環指令的實用性,在創意中閃現思維的火花,鍛煉邏輯思維,提升信息素養。
培養低年級學生的計算思維要循序漸進。對課堂中遇到的實際問題需要進行交流討論,給學生提供不同的學習支持服務,讓學生思考如何在滿足條件要求的情況下,以最優的程序設計完成闖關任務。比如在“江南·循環”這一課,“小魚找荷葉”的闖關任務步步升級,提高了學生對編程課的興趣,也提高了課堂的教學質量。
“學而不思則罔。”創新來源于不斷的思考。教師在教學中要讓學生養成思考的好習慣,[5]在編程課中通過問題分析啟發學生的高階計算思維,培養學生的拆分思維和完整思維。那么,如何進行問題分析呢?學生的思考過程尤為重要。筆者認為,如果把學生的思考過程展現出來供大家探究,對促進學生計算思維的發展將大有裨益。比如在“小畫家·循環”課程學習中,學生通過繪畫將思考過程展現在紙上,往往會更好地體現思考動態,激發創新思維。