趙鴻
日常生活中許多人習以為常的活動都蘊含著計算思維,菜譜就是算法設計的一個例子。菜譜會將一道菜的烹飪步驟一一羅列出來,比如將食材切成塊狀、將油倒入鍋中加熱等,不會做這道菜的人,只要按照步驟操作,就能做出來。這種把解決問題的過程分解、細化并且明確到每一個步驟和方法的思維活動就是計算思維。在小學信息科技課程教學中,培養學生的計算思維不僅是《義務教育信息科技課程標準(2022年版)》的要求,也是在大數據、人工智能等技術不斷發展背景下的信息時代要求。本文以三年級上冊“賽車游戲”一課為例做具體說明。
一、創設情境,激發學習興趣
興趣是最好的老師。小學生因為年齡較小,生活經驗不足,所以在學習編程時常常會遇到困難,如條件判斷、循環操作等概念對小學生來說既遙遠又抽象,很難理解。因此在教學中,教師要有意識地創設生動具體的場景,引發學生情感共鳴,激發其內在的學習動力。
在教學“賽車游戲”一課時,教師通過無人駕駛汽車導入課程內容,結合學生看過的科幻電影創設情境:在不久的將來,人們如何設計出一輛能自動行駛的汽車?將角色運動和方向調整的相關指令融入學習任務情境中,激發學生的創造愿望和興趣,培養學生的想象力和創造力。創設情境要結合學生的思維發展特征,結合學生的生活實際,拉近學生與所學內容之間的距離。創設的情境還要利于學生動手實踐,教師應鼓勵學生自主探索、動手實踐、合作交流,在自主實踐中深化對知識的理解。同時,創設的情境也要具備寬松、民主、安全、和諧的課堂學習氛圍,讓學生敢于表達,使其在輕松愉快的氛圍中主動學習,讓課堂真正成為學生展示自我的舞臺。
二、分析任務,引發計算思維
具體的課堂教學設計要以任務驅動為平臺,緊扣“賽車游戲”的學習任務,將其概括為“編寫程序腳本,讓賽車從賽道起點跑到終點”,并進一步細化分解為“起步”“連續行駛”“修正方向和停車”這三個具體的子任務。其中,賽車起步時要移動到固定的起點,擺正車頭,初始化賽車的位置和方向,這樣賽車才能順利駛入賽道。連續行駛需要賽車角色能沿著預定的方向連續前進,修正方向和停車則要求賽車在行駛過程中能檢測到彎道和終點,行駛到特定位置時能自主修正方向和停車,實現無人駕駛。
上述過程通過對計算思維的分解與評價,把大任務拆解成具體的小任務,把復雜任務拆解成簡單任務,把陌生的情境拆解成能用已有知識解決的熟悉情境,與圖形化編程的知識點、學生計算思維能力的發展階段相匹配,充分體現了“自頂向下,逐步求精”的結構化程序設計理念。通過任務驅動,學生能夠明確自己的思考過程,把腦海中的想法分解、轉化為圖形化的編程指令,進而引發計算思維。
三、編寫程序,提升計算思維
通過上述情境創設以及任務分析,學生對本課的編寫程序已有了具體了解,需要實現的功能簡單明確,能通過基本的編程指令來描述解決。接下來,要給予學生時間和空間,讓學生自主設計算法以及編寫程序。
賽車在起步時要移動到起點,擺正車頭方向使用“面向90度”控件,這樣就能順利起步駛入賽道。經過任務分解,學生很容易把要實現的功能和圖形化編程指令一一對應起來,加深對各種指令的理解。賽車連續行駛要求賽車角色不斷地執行“移動1步”控件,并和“重復執行”控件搭配使用,組成循環結構。
賽道是彎曲的,賽車連續直線行駛就會駛出賽道進入綠色的草坪區域,要及時修正方向,可以在車頭左右兩側各設置一個傳感器,轉彎時一旦觸碰到綠色草坪就提示修正方向。停車需要檢測賽車是否碰到了紅色的終點標志,碰到即停車。賽車在行駛過程中要每時每刻檢測是否碰到綠地和紅色標志,一旦碰到要立即修正方向或者停車。通過偵測控件實現條件判斷結構,遇到特定情況時程序能采取對應的措施,就像人在開車一樣,滲透了模式識別的理念,用程序來描述現實世界的變化,實現了從無序到有序的轉變。
四、合作交流,完善計算思維
建構主義理論認為,學習是學生依據其已有的知識和經驗所進行的主動建構,鑒于個體的特殊性,各個學生有其不同的學習態度、思維方式和認知風格,每個人都以自己的方式理解教師的要求,因而其活動結果必然存在差異。認識并非純粹的個體行為,而是不同個體之間表達、交流、質疑與反思,據此不斷改進的過程。因此,需要安排小組合作,在小組中交流各自的想法。
小組合作中,經歷不同觀點的碰撞,學生思路得到糾正,疑惑獲得解決,思維漸趨完善,在相互印證中形成共識。在“賽車游戲”中,有的學生對角色左轉或右轉沒做區分,有的分辨不清,有的對角色位置定位不準確,有的沒有意識到要重復檢測彎道和終點。怎么突破這些難點?通過小組交流,學生們受到啟發,紛紛針對各自的疑問進行操作嘗試。通過實際體驗和程序驗證的方法,學生可以清晰地看到每一條指令的執行效果,發現自己的程序哪里出了問題。
五、反思總結,升華計算思維
研究表明,計算思維所要求的核心技能與數學、科學等學科核心素養有明顯交叉,如計算思維的核心技能“抽象”,體現為數學中的“抽象推理”“通過反復推理尋找和表達規律”等。反思是以學生嘗試后獲取的經驗為思考對象,從中抽象概括出知識技能或將知識歸納整理形成結構。其一,學生通過整理本課知識,形成“賽車游戲”起步、連續行駛、修正方向和停車這幾個主要步驟以及每一步的程序編寫;其二,積極思考偵測控件還可以拓展和運用到哪些類似的學習任務中。在學生概括總結的過程中,教師配以板書、流程圖,簡要、直觀地呈現本課知識,在幫助學生形成知識框架的同時,進一步升華其計算思維。
綜上所述,在教學中,教師創設情境激發學生的學習興趣,通過任務分解引發計算思維,學生親身嘗試、主動編寫程序,感受計算思維,在合作交流中改正和完善自己的計算思維,并通過辨析、追問促使計算思維不斷攀升,推動進一步發展。