【摘 要】本文圍繞計算思維培養(yǎng)三問:計算思維究竟是什么、計算思維培養(yǎng)的框架是怎樣的、計算思維培養(yǎng)的策略應(yīng)如何,和大家一起逐步揭開計算思維的面紗,認(rèn)識計算思維的內(nèi)涵,探索計算思維能力的發(fā)展規(guī)律,形成計算思維培養(yǎng)的路徑。
【關(guān)鍵詞】計算思維;培養(yǎng)框架;教學(xué)策略
【中圖分類號】G434" 【文獻(xiàn)標(biāo)識碼】A
【論文編號】1671-7384(2022)012-047-03
計算思維作為智能時代人們認(rèn)識世界、改造世界重要的方法論,對于中小學(xué)階段的學(xué)生而言,是一種觀察和理解周邊世界的新視角,是一種利用計算的過程和方法來理解和解決問題的新能力,更是他們應(yīng)對未來競爭與挑戰(zhàn)的必備技能。世界各國都在加快步伐開設(shè)中小學(xué)階段的計算思維相關(guān)課程,來幫助學(xué)生更好地適應(yīng)未來。本文將圍繞計算思維培養(yǎng)“三問”與大家一起揭開計算思維的面紗,將計算思維的培養(yǎng)真正滲透到我們的課堂教學(xué)之中。
實然之境:計算思維究竟是什么
在我國,計算思維被列為高中信息技術(shù)課程和最近出臺的義務(wù)教育信息科技課程四大核心素養(yǎng)之一,非常受重視??墒窃诨A(chǔ)教育具體實施中,計算思維的培養(yǎng)卻困難重重。一是因為國內(nèi)面向基礎(chǔ)教育的計算思維研究還不夠成熟,二是由于計算思維過于抽象。雖然高中信息技術(shù)新課標(biāo)落地實施已經(jīng)五年了,很多教師對計算思維好似熟悉的陌生人,很難捕捉其核心,更別談如何有效地發(fā)展學(xué)生的計算思維了。
計算思維是世界公認(rèn)的普適思維方式。正因為它是一種思維方式,所以很容易被誤解。對于教師而言,搞清楚計算思維到底是什么非常關(guān)鍵。
關(guān)于計算思維的定義,學(xué)術(shù)屆眾說紛紜,最受認(rèn)可的是,2006年周以真教授給予的明確定義,她認(rèn)為,計算思維就是運用計算機科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計,以及人類行為理解等一系列思維活動[1],從此引發(fā)了全球?qū)τ嬎闼季S研究和實踐的關(guān)注。周以真教授對計算思維的定義進(jìn)行過多次調(diào)整,但始終沒有脫離“解決問題”這個主線。對于信息技術(shù)學(xué)科教學(xué)而言,最權(quán)威的計算思維定義就源自課標(biāo)。新課標(biāo)注重在利用信息技術(shù)解決問題的過程中,基于學(xué)科本質(zhì)的思想方法滲透,隱性的學(xué)科思想方法會潛移默化地影響人們的內(nèi)在思維,提升學(xué)生在面對復(fù)雜場景、復(fù)雜問題時的思維品質(zhì)?!读x務(wù)教育信息科技課程標(biāo)準(zhǔn)(2022年版)》對計算思維的定義相比于《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版2020年修訂)》更具可操作性,將其中關(guān)鍵要素進(jìn)行提取,可形成操作性的計算思維實施流程。
適然之態(tài):計算思維培養(yǎng)的框架是怎樣的
計算思維的眾多概念界定中,“問題解決”是出現(xiàn)頻率最高的詞匯之一。通用問題解決路徑從行為表現(xiàn)角度可分為五個階段:確定問題、設(shè)計步驟、實施步驟、評估迭代、泛化推廣[2]。筆者結(jié)合課標(biāo)中計算思維的定義以及計算思維的本質(zhì)內(nèi)涵,提煉出如下六個關(guān)鍵要素。
(1)分解:將復(fù)雜的問題分解為可管理、可重復(fù)的簡單問題;(2)抽象:把生活中的問題抽象化,我們生活在物理世界,計算機在數(shù)字世界,將真實物理世界和計算機數(shù)字世界對應(yīng)的過程就是抽象[3],忽略不必要的空間或時間等細(xì)節(jié),集中解決關(guān)鍵問題;(3)模式識別:識別出共性的問題,用同一個方法來解決,這樣的問題就可以交給計算機,讓它重復(fù)做,形成規(guī)模效應(yīng);(4)算法設(shè)計:設(shè)計問題解決方案的邏輯和流程化、可調(diào)用的一系列指令;(5)調(diào)試優(yōu)化:思維過程的自我評判,在解決方案無法正常工作或效率不高時,檢測、識別并修復(fù)錯誤或?qū)Ψ桨高M(jìn)行優(yōu)化,優(yōu)化往往需要綜合考慮解決問題的時間、空間、經(jīng)費成本以及運行效率;(6)泛化遷移:將解決方案應(yīng)用于與之類似的問題解決中,達(dá)到創(chuàng)造性地解決問題的目的。
應(yīng)然之策:計算思維培養(yǎng)的策略應(yīng)如何
計算思維落實到課堂中該如何教,到現(xiàn)在為止依然是一個很有挑戰(zhàn)性的問題。筆者梳理了國內(nèi)外已有的做法和經(jīng)驗,總結(jié)了以下四個策略供教師們參考。
1.以問題解決為主線開展計算思維教學(xué)
在常態(tài)化教學(xué)中,要實現(xiàn)計算思維的培養(yǎng),最有效的策略就是以現(xiàn)實世界問題的解決作為教學(xué)主線開展活動,通過設(shè)置系統(tǒng)、復(fù)雜的真實問題情境,讓學(xué)生在復(fù)雜問題解決過程中自然引發(fā)對知識、技能學(xué)習(xí)的需求并主動習(xí)得,鼓勵學(xué)生通過自主探究和小組協(xié)作尋求可行的解決方案,并通過討論、實驗或?qū)嵺`對解決方案進(jìn)行迭代優(yōu)化,遵循情境創(chuàng)設(shè)、問題分析、方案建構(gòu)、解決問題的基本思路[4]。其中,情境創(chuàng)設(shè)尤為關(guān)鍵,因為思維具有情境性,對思維能力的培養(yǎng)需要借助特定真實情境才能實現(xiàn)。而這個特定的真實情境往往是現(xiàn)實世界遇到的復(fù)雜的真實情境問題,也就是劣構(gòu)問題,有多種解決方案,需要跨學(xué)科來解決。
【案例1】瘋狂的保險箱——for循環(huán)嵌套的使用
(1)情境創(chuàng)設(shè)。課堂伊始,教師讓學(xué)生嘗試破解四位密碼的保險箱,密碼是不分大小寫的字母,學(xué)生們很努力地進(jìn)行破解,可是課堂短短幾分鐘怎么都破解不出來,因為如果要人工進(jìn)行破解,有456976(26的4次方)種可能,這個不太可能完成的任務(wù),激發(fā)了學(xué)生強烈的認(rèn)知沖突。此時,教師嘗試讓計算機來幫忙,瞬間得出正確結(jié)果,學(xué)生驚嘆不已。這體現(xiàn)了計算機解決問題的優(yōu)勢,運行速度快、精度高、自動化且不知疲倦。
(2)問題分析。教師引導(dǎo)學(xué)生把這個復(fù)雜的破解密碼問題進(jìn)行分解,嘗試通過計算機來解決。分解問題:將繁瑣的解鎖過程分解為相對容易的子問題(遍歷字符、1位密碼破解、2位密碼破解、4位密碼破解)。模式識別:通過模式識別摸索出規(guī)律,密碼個數(shù)與循環(huán)嵌套層數(shù)的關(guān)系,如2位密碼就要2層循環(huán)嵌套來破解。抽象:破解密碼本質(zhì)就是輸入的字符串與保險箱密碼的字符串進(jìn)行比對,如果一致就破解了。
(3)方案建構(gòu)。在計算機世界具體如何破解,通過算法流程圖呈現(xiàn)出整個算法實現(xiàn)的邏輯和指令,使用for循環(huán)嵌套遍歷字符,組合字符串,解鎖保險箱。
(4)解決問題。為了減少學(xué)生的挫敗感,更聚焦于算法設(shè)計,教師可以嘗試采用代碼半成品形式,讓學(xué)生完成關(guān)鍵代碼的編寫即可。解決完破解密碼的問題,教師通過遷移環(huán)節(jié)檢測學(xué)生是否真的學(xué)會了,是否能將解決方案應(yīng)用于其他類似問題的解決之中,教師拋出一個相似問題:小明不小心弄臟了記事本中6位數(shù)字密碼中的兩位,你能幫他找回嗎?最后的課堂延伸環(huán)節(jié),教師讓學(xué)生就破解密碼本身進(jìn)行逆向思維,要想不被別人破解,首先自己設(shè)計的密碼要足夠安全,那怎樣設(shè)計密碼安全系數(shù)會更高呢?讓學(xué)生在討論中形成策略;另外如何辯證地看待密碼破解,從遵守信息法律法規(guī)的角度,我們該如何做,也需要讓學(xué)生在討論中達(dá)成共識。
這節(jié)課上到這里是否就可以結(jié)束了呢?教師通過一個人物來引發(fā)學(xué)生進(jìn)行深度思考:中國“密碼女王”王小云成功破解了世界上公認(rèn)的兩種最復(fù)雜的密碼算法,震動了全球密碼學(xué)界。美國等國家不惜一切代價,向她拋出橄欖枝,她平靜地回應(yīng):“我只為祖國服務(wù)?!彼钪W(wǎng)絡(luò)密碼安全的背后,是一個國家的安全。學(xué)生在這個鮮活的人物中,感受使命與擔(dān)當(dāng)?shù)姆至俊?/p>
2.將計算思維發(fā)展過程可視化
信息技術(shù)課堂有一個比較普遍的現(xiàn)象,教師帶著學(xué)生識別與理解問題后就直接跳到代碼編寫階段,學(xué)生還沒搞清楚解決問題的思路就開始編程了。原因是教師過于關(guān)注程序運行結(jié)果或作品完成度,也就是計算思維的結(jié)果,忽視了計算思維的加工過程。而實際上,學(xué)生親歷問題解決的過程遠(yuǎn)比問題解決的結(jié)果更為重要。將學(xué)生識別問題到形成方案的全過程的思維顯性化呈現(xiàn)出來,可以更好地幫助教師和學(xué)生理解學(xué)習(xí)過程中的過程性信息,有針對性地進(jìn)行評價和調(diào)整。
流程圖是學(xué)科運用最為廣泛的思維可視化工具,可是如何對流程圖進(jìn)行及時的評價和檢測呢?在課堂上,教師常常會邀請個別學(xué)生在黑板上繪制流程圖,或者讓學(xué)生在紙質(zhì)版、電子版學(xué)案中繪制。個別學(xué)生還可以現(xiàn)場點評,可是全班學(xué)生的流程圖就要等到課后教師批閱完畢才能反饋,這種評價非常滯后,有沒有辦法實現(xiàn)學(xué)生實時自檢和調(diào)試呢?“畫程”就是一個很好的工具,可以直接對流程圖進(jìn)行編譯并運行程序得到結(jié)果來檢驗算法。
3.在游戲化教學(xué)中發(fā)展計算思維
思維原本就很抽象,怎樣把抽象的內(nèi)容變得通俗易懂,游戲化是一個有效的突破口。教師運用游戲化教學(xué),將教學(xué)目標(biāo)隱匿于游戲活動之中,激發(fā)課堂活力和學(xué)生的創(chuàng)造性,提高學(xué)生參與度和合作意識,讓學(xué)生在“玩中學(xué)”“玩中創(chuàng)”,在游戲互動或設(shè)計過程中潛移默化地發(fā)展計算思維。
(1)將內(nèi)容理念融入游戲。教師將計算思維的內(nèi)容、理念等融入游戲中,讓學(xué)生在游戲過程中主動建構(gòu)知識,發(fā)展計算思維。教師設(shè)計游戲時要兼顧教育性與游戲性,找到兩者的平衡點。游戲化教學(xué)不等于單純的玩,而是將計算機原理在數(shù)字世界發(fā)生的過程通過游戲的形式在現(xiàn)實世界中模擬出來,建構(gòu)在學(xué)生的知識體系中,關(guān)注學(xué)生思維的產(chǎn)生、變化和遷移。
【案例2】排序的學(xué)問
為了幫助學(xué)生更好地理解冒泡、選擇、插入三種排序算法,教師采取紙牌游戲的方式。教師讓學(xué)生分組,每組采用不同的排序算法對紙牌進(jìn)行排序,通過小組討論、推演,掌握排序算法的規(guī)律,再讓小組進(jìn)行全班路演,共享不同排序算法的魅力。
(2)設(shè)計、開發(fā)游戲。讓學(xué)生在游戲設(shè)計過程中發(fā)展計算思維,是近年來國內(nèi)外教育專家研究的熱點。在游戲設(shè)計、開發(fā)的過程中,教師從計算思維的過程維度出發(fā),滲透分解、抽象、模式識別、算法設(shè)計、仿真、模擬等計算思維的方法,讓學(xué)生在愉悅地主動學(xué)習(xí)狀態(tài)中自然運用計算思維相關(guān)方法,實現(xiàn)“玩中創(chuàng)”的高階目標(biāo)。
【案例3】Python小游戲單元學(xué)習(xí)
學(xué)生親歷森林運動會游戲開發(fā)的全過程,從游戲界面的創(chuàng)建、游戲角色的移動和控制、判斷游戲勝負(fù)、刷新冠軍到為冠軍頒獎等環(huán)節(jié),一步步實現(xiàn)。由于游戲的實現(xiàn)難度系數(shù)不高,學(xué)生還可以自己定義游戲規(guī)則,充分發(fā)揮自己的想象力和創(chuàng)造力。整個單元,學(xué)生主動學(xué)習(xí),熱情高漲,計算思維的培養(yǎng)自然水到渠成。
4.人工智能應(yīng)用情境驅(qū)動計算思維培養(yǎng)
計算思維是未來智能時代所需要的核心素養(yǎng),也是學(xué)生適應(yīng)人工智能社會的關(guān)鍵能力。前面我們還在苦苦探尋和創(chuàng)設(shè)計算思維培養(yǎng)的真實情境,其實圍繞人工智能應(yīng)用情境中的疑難問題尋求解決方案,就是培養(yǎng)學(xué)生計算思維的一個極好路徑。此外,教師通過人工智能的計算思維探索,讓學(xué)生在將來的工作和生活領(lǐng)域中不會受困于人工智能算法,具備一定程度的“打開算法黑箱”的能力,深入了解人工智能運作的機制,甚至知道這些算法都嵌入了怎樣的價值、利益、偏好和動機,從而具備質(zhì)疑、評估和選擇的能力。
【案例4】基于人臉識別的情緒分析技術(shù)
“智能長者之家”是一個關(guān)懷空巢老人的人工智能課程單元學(xué)習(xí)內(nèi)容,“基于人臉識別的情緒分析技術(shù)”是“智能長者之家”單元學(xué)習(xí)中的一節(jié)課。長者情緒識別是通過人臉關(guān)鍵點以及特征提取來識別長者的四種情緒,教師讓學(xué)生思考如何提升情緒識別的準(zhǔn)確性,從而為長者提供個性化的服務(wù)。
有關(guān)計算思維的熱點問題還有許多,后續(xù)將和大家探討計算思維培養(yǎng)的“后三問”:如何對計算思維進(jìn)行評價,實現(xiàn)教學(xué)評一致性;計算思維不能局限在信息技術(shù)學(xué)科范疇,如何通過跨學(xué)科的課程和活動來進(jìn)行培養(yǎng);要發(fā)展學(xué)生的計算思維,教師本身該如何提升自己的計算思維水平和教學(xué)能力。
注:文中所引案例源自珠海市實驗中學(xué)鐘大壬老師、珠海市斗門區(qū)和風(fēng)中學(xué)胡紅云老師、珠海市第一中學(xué)平沙校區(qū)胡欣老師、廣大附中黃埔實驗學(xué)校夏莉穎老師的設(shè)計。
參考文獻(xiàn)
WING J M. Computational thinking[J]. Communications of the acm,2006,49(3):33-35.
Brandford,J.,amp;Stein,B.S.The IDEAL problem solver:A guide for improving thinking, learning and creativity[M].New York,NY: W.H.Freeman,1984.
諸葛越.未來算法[M]. 北京:中信出版社,2021:XIV-XXII.
張立國,王國華. 計算思維:信息技術(shù)學(xué)科核心素養(yǎng)培養(yǎng)的核心議題[J]. 電化教育研究,2018(5): 119-120.
作者單位:廣東珠海市教育研究院