盧道海



引言
在計算機互聯網科技高速發展的信息時代,計算思維被稱為“21世紀關鍵能力”要求人人應該具備。教育部2020年頒布的《中等職業學校信息技術課程標準》更是將其列為中職信息科技課程的四大核心素養之一,明確提出要在中職學校對學生進行計算思維培養。
計算思維概念是由周以真教授2006年提出的,她定義,計算思維是運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解等一系列思維活動。近年來,計算思維的培養在計算機教學、信息技術教學等教育領域都呈現出很高的活躍度,郁曉華教授從工程設計視角將計算思維教學過程劃分為思維加工過程和思維發展結果兩部分,前部分由識別問題、分解問題、系統抽象和方案設計與優化環節組成,后部分主要指方案實現環節。圍繞教學過程,張國強教授認為應重點對抽象、分解、算法思維、泛化與模式、評估和邏輯等六項技能進行培養。
程序設計語言課程多采用項目化教學——基于問題解決的一種教學模式,與計算思維的概念及技能點契合度高,被許多中職學校納入信息科技課程體系并賦予培養學生計算思維的重任。
通過文獻分析研究和課堂教學交流,筆者發現程序設計語言課程在培養中職學生計算思維能力方面存在以下主要問題。
1.重思維發展結果輕思維加工過程
學生計算思維的發展情況常常以最終的程序作品作為評價的主要依據,而算法又是問題解決的關鍵,這兩個因素的加持,會使得許多教師將大部分時間用在算法闡述、學生代碼編寫和程序調試上,從而缺乏關注學生解決問題時的思考過程,尤其是缺少問題識別、分解問題和系統抽象等環節學生的參與,導致計算思維中最重要的抽象能力被忽視或弱化。另外,為完成教學內容,多數教師在教學方法上會傾向演示教學法,主動將知識講給學生聽,學生被動獲得知識。做法偏離了計算思維培養的初衷。
2.問題分解缺乏科學指導和訓練
將編程問題分解成多個子任務是很多教師在課堂教學中常做的事情,分解的確可以降低編程難度,但分解后的子任務,教師通常會認為很簡單,邏輯關系也無需過多講解或指導,于是放手讓學生自己去完成,學生憑借個人感覺進行實操,缺乏具體的、系統的問題分解科學指導和訓練,導致學生常常只能模仿編程,難以形成技能遷徙。
計算思維中抽象和分解兩個重要技能難以落地的現狀,向中職學校信息科技類課程的教學內容、方法、模式等提出了新的要求,也成為當前培養學生計算思維的重要研究內容。
一、聚焦計算思維加工過程的雙支架教學模式概念及相關研究(一)相關概念
1.支架,基于建構主義理論,通常指協助學習者獲取知識或技能的適合資源。如資源平臺、教學法、學習方法或支撐工具等。
2.費曼學習法是學習者將自己對問題的理解講述給其他人聽且能讓他人聽懂的學習方法。基于“輸出式學習”原理,通常有以下四個步驟:概念類型、以教代學、查漏補缺和簡化語言。
3.流程圖,是用規定的符號描述程序中所需的各項操作或數據流向的圖示。
(二)相關研究
計算思維的核心是發現、抽象和表達問題(林旺、孫洪濤,2014)。在問題求解過程中,學習者首先要了解問題,只有對問題充分了解,問題才有可能順利解決。但問題往往以隱藏的方式出現,學習者如何掌握且掌握的程序如何呢?答案就是使用費曼學習法。費曼學習法中最重要的步驟是“以教代學”,在這個步驟中,學習者要了解問題的概念及外延,搞清問題的真相,然后才能向他人講述。對于聽講人的反饋,學習者需及時反應,查漏補缺,以完善自己對問題理解的認知。在“簡化語言”步驟,學習者更是要用簡潔的語言描述問題內涵,這個步驟就是要將知識抽象為具體,就是要促使學習者腦內的“隱性思維”進行“顯性化表達”的過程,即“隱性思維顯性化”的過程(王玨,2020)。事實上,無論費曼學習法的哪個步驟,實質上都在進行抽象思維訓練。
流程圖可以通過豐富的圖示符號展現主題元素之間的關系邏輯和過程演繹,可以很好地作為計算思維過程抽象形式化工具(郁曉華,2019)。而漸進式流程圖操作,更可清晰凸顯問題的分解與細化情況,從而讓學習者得到問題分解的科學指導和訓練。
(三)聚焦計算思維加工過程雙支架教學模式
本教學模式主要使用兩個支架:費曼學習法和流程圖。借助費曼學習法可進行問題識別及抽象技能培養;繪制流程圖可厘清程序邏輯關系實現分解技能訓練。兩個支架均需學生積極參與,多思勤動,體現了以學生為中心教育理論。雙支架有機結合,通過減少對編程語言和語法的關注,聚焦計算思維加工過程,以真正回歸計算思維培養本質。整個教學模式如圖1所示。
1.場景識別
教學開始教師給出問題后,采用費曼學習法進行教學。費曼學習法應用的核心即為以教代學(易紅玉,2023),學生小組學習和討論后,輪流扮演“教師”角色,將問題及理解描述(教)給小組成員聽,小組成員反饋描述。
2.系統抽象
在費曼學習法進行中,學生將問題重要細節確定下來,隱藏不需要關注的其他具體細節,確定的細節需提取關鍵字。
3.分解問題
在教師的引導下,小組成員共同探案,按問題分解原則嘗試對問題進行分解,以便有步驟、分層次地各個擊破小問題。
4.方案設計與優化
根據分解和確定的關鍵字,學生在流程圖上標識好并開始設計邏輯,最終形成較系統的解決方案。在教師的引導下,學生不斷反思和更新問題求解方案,不斷優化流程圖及整個程序邏輯。在這個環節中,通常采用漸進式流程圖支架輔助完成。這個支架的反復使用和訓練,會讓學生漸漸明白問題的分解模式、子問題的表達圖例及分解和細化間問題的邏輯關聯。一定的科學訓練量可以讓學生系統習得問題分解操作和邏輯走向。
5.方案實現
根據優化好的流程圖,指導學生進行程序編寫和調試,使問題得以解決。
這個環節,教師容易將算法作為重點,花費大量時間進行講解和實現,其實大可不必原因有二:一是“一萬小時法則”作用下,還在學習階段的中職學生幾乎不能構建出非常棒的算法出來。另外,算法很大程度就是數學問題,讓數學基礎薄弱的學生過多關注算法,效果會適得其反,更易打擊他們學習編程的積極性。二是常見問題求解的算法較為固定,學生獲取也非常方便,學生模仿實現更易建立學生編程自信。因此,選擇性忽略“算法”,適當弱化這個環節,讓時間上能更充裕地用在思維加工過程,行為上更能聚焦到計算思維的抽象和分解這兩個重要技能培養中來。
二、聚焦計算思維加工過程的雙支架教學模式實踐本教學實踐對象為中職一年級計算機網絡技術學生,課堂是C#程序設計語言,教學內容為《for循環語句》。通過創設場景、在雙支架輔助下,師生共同聚焦在識別問題、分解問題、系統抽象和方案設計與優化等四個環節進行學生計算思維的培養。
(一)場景識別
教師播放電視節目《一站到底》視頻片段:“判斷題:沒有人能夠將一張普通的A4紙對折15次”,公布答案前視頻停止,要學生通過編程作出判斷。
教師采用費曼學習法,學生分小組研討后進行描述,學生的描述各種各樣,一般典型的描述如下:
折1次,看紙的高度有沒有超過自己身高?
折2次,看紙的高度有沒有超過自己身高?
折3次,看紙的高度有沒有超過自己身高?
……
折15次,看紙的高度有沒有超過自己身高?
在費曼學習法“以教代學”步驟中,學生描述有三個基本要求:(1)全面不能有遺漏;(2)準確不能有歧義;(3)次序不能有混亂。描述的語言都是經初步抽象而來的。
(二)系統抽象
經過組員反饋和糾錯,折0次的操作被增補進來,教師給予積極評價。再經查漏補缺,小組成員認真從問題中提取關鍵字,以更能用簡化語言向他們表達出來。提取關鍵字其實就是對問題進行抽象的操作。這個環節,教師需鼓勵學生開動腦筋,一起甄別關鍵字的優劣,并用表格等工具呈現出來。上述問題抽象如表1所示:如果使用計算器,學生普遍能算出對折15次后紙的高度。
(三)分解問題
經過問題描述和抽象,學生需對問題進行分解,將問題分解成一個個子問題并用流程圖表達出來。在這個環節中,教師要向學生重點講解問題分解基本原則:遵行MECE原則,即問題拆解成的子問題要完整且獨立;一般地,編程語言中一個循環語句或一個條件選擇語句就可分解為一個子問題。操作需要教師有一定量的練習和訓練。子問題分解如表2所示。
問題分解后學生要根據程序結構類型繪制出流程圖,以將分解結果可視化。如圖2所示。
(四)方案設計與優化
根據分解出的子問題,在教師引導下,學生對流程圖進行標識、設計邏輯、反復優化,最后形成系統解決方案。
1.教師需重點引導學生分析抽象結果,注意歸納分析,轉化為數學問題。特別關注循環變量與目標數的規律:第一列是循環變量,順序是1、2、3、4……;第二列是紙的張數,數量是1、2、4、8……是等比數列,公比是2;第三列是紙的厚度,紙的張數*1張紙的厚度可計算出。通過觀察發現,第一、二列的數是2的n次方關系。一般地,方案設計環節就是找規律,找到規律后將其轉化為數學的問題,是處理數與數之間數量關系的問題。
2.教師還需要提供漸進式流程圖支架輔助學生學習。如通常提供填空式、提示式、繪制式等流程圖(圖2,圖3),難度由易到難進行,讓學生根據優化結果,漸進式地形成最終方案。漸進式流程圖支架需要教師反復操作,讓學生達到一定的訓練量。一定量的系統學習和科學訓練,能明顯提升學生計算
圖3提示式和繪制式流程圖
學生完成流程圖操作后,小組還需進行評估和優化,為編寫代碼做好充分準備。
(五)方案實現與問題遷移
經過前面四個環節的操作,將循環變量和行數、對折后張數等關聯起來,用C#語言轉化下述語句。
for (int i = 0; i < 16; i++) //15次對折循環{計算對折第i次時,紙的厚度Math.Pow(2,i)
輸出對折次數和紙的高度
if(h>個人身高) break;//中斷對折,退出循環}
前面提及,在中職語言程序課程中,算法建議教師以講授的方式實現,而評估和遷移運用,則在學生有一定的抽象、分解思維后再進行,這里就不再贅述。
三、聚焦計算思維加工過程的雙支架教學模式效果分析為了驗證教學模式的有效性,筆者對計算機網絡技術專業一年級兩個平行班(A、B班)進行對比試驗,A班采用傳統的教學模式,B班采用聚焦計算思維加工過程的雙支架教學模式進行教學,一個學期結束后以相同的問題對兩個班的學生進行測試,兩個班學習狀態和計算思維主要技能進行對照,結果如表3、表4所示。
從兩張對照表可以看出,該模式對于班級學習氛圍有較明顯的促進作用,學生抽象、分解、描述能力整體提升明顯。實踐編程表現上,A班大部分學生停留在模仿編程水平,而B班因在思維加工過程重點訓練,有23%的學生自主實現功能、技能遷移性好。
四、反思與總結
費曼學習法要求教師能接受并能堅持應用在課堂教學中,因要鼓勵學生多想多說以養成習慣,前期時間成本極高,教學進度會拖后。此外,教師課前要充分備課,查閱大量資料,對教學內容進行重組,師生學習曲線開始較陡,適合教學內容自主性較強的科目。
提示式流程圖訓練時間可再長些,這樣,問題的分解原則和流程圖繪制學生會更自信些。流程圖訓練過程中,表達式的提取和生成也可同步進行,因原理類似,學生易舉一反三。
通過后期的問卷調查,發現聚焦計算思維加工過程的雙支架教學模式普遍受到學生們的歡迎,模式以學生為中心,學生表現出明顯的主動性和積極性,在使學生計算思維得到一定加強的同時,也為教學實踐提供了新的視角。
責任編輯何麗華