中圖分類號:G434文獻標識碼:A論文編號:1674-2117(2025)17-0064-03
在《普通高中信息技術課程標準(2017年版)》(以下簡稱“新課標”)和相應新教材出臺后,各地區相繼展開了實踐與探索。在“雙新背景下,計算思維和“算法”大概念作為課程學習的重點之一,對教師提出了新的挑戰,教師需要對新課標的內容和課本內容有全新的認識,以更好地指導教學實踐,確保滿足學生全面發展的需要。
計算思維與問題解決過程的關系
新課標將計算思維定義為個體運用計算機科學領域的思想方法,在問題解決過程中涉及的抽象、分解、建模、算法設計等思維活動。Mayer提出問題解決的過程包括理解、計劃、執行和自我監控四個關鍵階段。計算思維的五個要素與解決問題密切相關,理解是解決問題的起點,只有對問題有全面的了解,才能更好地找到解決問題的方法。在計算思維中,抽象要求學生確定解決問題過程中的具體細節,而分解則是將問題分解為更易解決的小問題。抽象和分解旨在更精準地識別問題,確保設計解決方案的有序開展。在對問題理解后,學生根據問題理解制訂問題解決方案,即進行計算思維中的算法設計。在問題解決方案計劃后,就是對解決方案的執行。在執行的過程中,學生需要不斷勘誤和優化算法,這有助于計算思維的評價維度的發展。在自我監控的過程中,學生會不斷地反思與總結,這與計算思維的概括維度類似。
基于問題解決過程培養計算思維的實施策略
結合計算思維的要素,筆者提出以下基于問題解決過程的計算思維發展策略(如圖1),以促使學生在課堂中更好地發展計算思維。
圖1

1.設計問題提示,精準識別問題
在課堂教學中,教學內容的趣味性或者學生的興趣點是課程順利開展的關鍵。學生的興趣點和好奇心一旦被激發,就會產生學習動機。在課程導人后,學生的首要任務是明確當前要解決的問題,準確識別問題的特征并進行問題的分解,這涉及計算思維的抽象與分解維度。
要想能夠準確識別問題,學生需要具備相關的概念性知識和策略性知識。因此,在課堂教學中,教師不僅要注重設計趣味性的內容,還要確保學生在學習過程中能夠獲得必要的概念性和策略性知識支持,以更好地應對問題的抽象和分解。為此,教師可以提供一些問題提示,引導學生回顧之前學習過的知識,梳理解決問題的關鍵步驟,幫助他們更深入地理解問題,進而促進計算思維的抽象和分解維度提升。
2.提供模式樣例,促進解決方案設計
在對問題進行初步分解后,學生要根據問題進行算法設計。在Python程序中,不僅考查學生對程序的基本使用,還需要學生結合具體項目來設計程序的邏輯。在課堂中,學生可能會面臨新知識與舊知識的結合應用,尤其在程序設計方面可能會遇到困難,從而影響學習的熱情,導致學習興趣下降。
針對上述問題,教師可以采用基于樣例學習的方法。基于樣例學習是一種提供給學生學習案例的方法,案例包含了相關解決問題的模式與規則,該模式能幫助學生快速地進行算法設計,從而在更短的時間內產生更好的學習結果,促進計算思維的提升。
3.使用自我解釋策略,評估優化解決方案
在算法設計完成后,學生的程序難免會出現錯誤,因此需要對程序做進一步的測試和調試。為促進學生間的交流與合作,教師可以對班級進行分組。學生在組內對自己的程序錯誤進行解釋,其他組員在聽取的過程中可以糾正錯誤或者提供補充意見。這種小組內部的自我解釋交流過程不僅能夠提升學生計算思維的評價維度,還能夠促使學生對自己的錯誤進行客觀評價。在每一輪的自我解釋討論過程中,學生不僅能夠在交流中發現錯誤并進行勘誤與改進,還能夠在迭代的過程中逐步實現算法設計的最優化。教師在觀察學生評價交流的過程中,也能夠進一步了解學生對知識的掌握程度,從而有針對性地進行后續教學,提升整體教學質量。
4.分享交流,總結問題解決模式
在程序調試完善后,學生對解決問題的方法進行總結不僅是一個關鍵的環節,更是一個深刻的認知過程。這個階段的重要性在于學生通過對問題解決路徑的回顧與總結,形成一種問題解決的圖式。這個圖式不僅是對具體問題的應對方案的梳理,更是一種抽象的思維框架,可用于類似情境下的問題解決。通過分享,學生將自己的思考過程以更加清晰和系統的方式呈現給他人,從而促進了思想的碰撞和交流。這不僅有助于鞏固學生自身的理解,形成更加豐富和復雜的認知結構,促進計算思維的概括維度提升,還能激發其他人的思考,推動整個學習群體的共同進步。
基于問題解決過程培養計算思維的案例
下面,筆者以高中信息技術《必修1 數據與計算》第二章第三節中的程序設計基本知識為例進行具體闡述。本課教學內容為循環結構嵌套選擇結構的應用。學習目標為: ① 通過編寫“顯示全部空余車位”程序,掌握列表、if語句、for語句的綜合運用。 (信息意識) ② 通過分析“停車難問題”,依據解決問題的需要設計流程圖,運用if語句for語句、列表的知識編寫并調試程序,解決實際問題。(計算思維、數字化學習與創新) ③ 觀看北斗衛星導航系統的科普視頻,認識北斗衛星導航系統的發展對我國發展的重要意義,激發學生對科技學習的興趣。(信息社會責任)具體的教學過程如下。
1.情境導入,分析問題
教師活動:在生活中,我們常常碰到這樣的情況一一在假期出行時,當找到一個停車場時,心情格外愉悅,但是一進去卻發現停車位非常難找,于是不得不在停車場里兜兜轉轉很長時間,這不僅浪費了時間,還讓人感到有些沮喪。停車場系統還可以在哪里優化,以更方便我們的出行呢?
學生活動:思考如何解決停車難問題,思考后得出方案—在進入停車場時可以具體顯示剩余車位。
教師提問:
問題1:程序怎么才能實現檢測空余車位?
問題2:程序中如何標識車位的狀態?
問題3:如何把車位信息存儲到程序中?
設計意圖:通過三個層層遞進的問題引導學生進行深度思考,從中抽象出解決問題的關鍵點,并回顧之前學過的概念性知識來解決問題。在教師的幫助下,學生能夠初步形成解決問題的關鍵步驟:標識車位當前的狀態一識別車位是否空余→輸出全部車位空余。這個過程不僅能引導學生解決實際問題,還有助于提高他們的抽象和分解等計算思維能力。
2.設計算法,解決問題
教師活動:假設目前有5個車位,1、3、5車位沒有車,2、4車位有車,引導學生分析“顯示第一個車位空余”的流程圖和程序。
學生活動:根據顯示第一個空余車位的程序,完成“顯示全部空余車位”的程序(如圖2)。
設計意圖:通過“顯示第一個車位空余”的樣例,學生能夠初步理解程序的邏輯。在此基礎上,教師引導學生開展探究活動,探討如何實現“顯示全部空余車位”。在小組合作探究的過程中,學生通過總結“顯示第一個車位空余”的樣例程序,推導出“顯示全部空余車位”的程序。
3.小組合作,完善程序
教師活動:假如有更多停車位,現在程序可能會遇到哪些問題?停車場還有哪些功能可以用程序來實現?
學生活動:三個人為一個小組,向小組成員解釋你在程序中遇到的問題。例如,根據流程圖我寫了…,使用了…,但是程序出現了…錯誤,錯誤的原因是…,我認為正確的程序應該是。小組討論程序還可以如何進行完善。
設計意圖:在解釋錯誤和討論的過程中,讓學生能夠更深人地理解問題并進行糾正,從而促使計算思維評價維度的進一步發展。

4.分享交流,總結拓展
教師活動:引導學生分析循環結構和選擇結構綜合使用的方法。播放北斗衛星導航系統的科普視頻。
學生活動:展示本組最后優化完成的程序,分享程序設計的方法。
設計意圖:學生在展示分享本組作品時,能夠整合所學知識,進一步提升知識的綜合運用、遷移能力。觀看科普視頻能拓寬學生的知識視野,使其了解我國北斗衛星導航系統的發展,提升信息社會責任。
結語
計算思維是現代社會需要重點培養的技能之一,信息技術課堂是發展計算思維的關鍵途徑。本文提出了基于問題解決過程培養計算思維的策略,實踐結果表明,該策略能夠有效提升學生學習效率,學生在課堂上的表現也更加活躍,參與度明顯提升,計算思維和問題解決能力也得到了提升。
參考文獻:
中華人民共和國教育部.《普通高中信息技術課程標準 (2017年版2020年修訂)》[S].北京:人民教育出版社,2020.2.e