摘要:計算思維作為信息技術(shù)學(xué)科核心素養(yǎng)之一,是信息化社會中數(shù)字公民所應(yīng)具備的重要素養(yǎng),但在傳統(tǒng)班級的統(tǒng)一授課制中,由于學(xué)習(xí)能力差異大,學(xué)生難以發(fā)展?jié)撃苄纬烧嬲挠嬎闼季S。鑒于此,文章提出利用Online Judge(在線評測平臺OJ)進(jìn)行計算思維教學(xué)的模式,利用OJ實現(xiàn)尋找不同層次學(xué)生的最近發(fā)展區(qū),同時采用小組形式合作學(xué)習(xí),實現(xiàn)因材施教、培養(yǎng)計算思維,并結(jié)合教學(xué)實際情況說明效果。
關(guān)鍵詞:Online Judge;計算思維;最近發(fā)展區(qū);小組合作
計算思維內(nèi)涵及培養(yǎng)存在的問題
2006年美國卡耐基梅隆大學(xué)周以真教授將計算思維定義為:一種運用計算機科學(xué)基本概念求解問題、設(shè)計系統(tǒng)和理解人類行為的方式,并強調(diào)是每個人的基本技能。[1]2011年,美國國際教育技術(shù)協(xié)會將計算思維界定為具有以下特征的問題解決過程:界定問題、分析數(shù)據(jù)、抽象表示、設(shè)計算法、形成解決方案并能夠遷移到其他問題的解決中。[2]在我國《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)》中,計算思維成為信息技術(shù)學(xué)科核心素養(yǎng),強調(diào)運用計算機科學(xué)領(lǐng)域的思想方法,形成解決方案的一系列思維活動。[3]加強以計算思維為核心的計算機科學(xué)教育,提升全民數(shù)字素養(yǎng),提升國家未來信息技術(shù)實力,已經(jīng)成為世界共識。
2016年,美國實施“為了全體的計算機科學(xué)”(Computer Science for All,簡稱CS for All)計劃,開展K-12的計算機科學(xué)教育。2013年英國政府頒布國家計算課程的目標(biāo)及框架,強調(diào)在K-12教育階段要發(fā)展學(xué)生分析、解決問題能力,培養(yǎng)設(shè)計和計算思維。新西蘭從2011年開始實施“編程與計算機科學(xué)”等五項數(shù)字技術(shù)核心學(xué)習(xí)。我國在K-12階段計算思維培養(yǎng)主要通過信息技術(shù)課程實現(xiàn),以算法為主。[4]
如何讓學(xué)生擁有計算思維,是一線信息技術(shù)教師非常關(guān)注的問題。有學(xué)者給出具體的課堂教學(xué)案例[5],有學(xué)者提出用項目方式研究真實問題,提升計算思維。[6]這些策略及實踐都是面向所有學(xué)生進(jìn)行統(tǒng)一的教學(xué)活動,而在現(xiàn)實的班級授課制教學(xué)中,學(xué)生的能力千差萬別,課堂上教師往往缺乏足夠的精力和時間去解答所有學(xué)生的問題,無法顧及學(xué)生的個性化學(xué)習(xí)需求,忽視學(xué)生“最近發(fā)展區(qū)”的問題,并最終體現(xiàn)在計算思維形成的缺失中。
OJ如何促進(jìn)基于“最近發(fā)展區(qū)”的計算思維培養(yǎng)
“最近發(fā)展區(qū)”理論由維果斯基提出,指兒童獨立解決問題的實際發(fā)展水平與在成人指導(dǎo)下或在有能力的同伴合作中解決問題的潛在發(fā)展水平之間的差距。好的教學(xué)應(yīng)該處于“教學(xué)最佳期”(兒童現(xiàn)有水平與成人指導(dǎo)后可以達(dá)到的水平之間)。[7]
2012年,張浩斌從應(yīng)用角度出發(fā),設(shè)計并開發(fā)了基于開放云平臺的開源在線評測系統(tǒng)HOSTOJ[8](簡稱OJ),并開放了源代碼。隨后OJ被廣泛應(yīng)用于大學(xué)生程序設(shè)計競賽中。2015年后,中學(xué)生算法教學(xué)開始引入OJ,2018年新課標(biāo)頒發(fā)后,不少地區(qū)開始鉆研基于OJ的Python算法教學(xué)。
采用OJ進(jìn)行算法學(xué)習(xí)的好處是教師可以提前將不同難度的項目問題放在OJ上并設(shè)置在同一節(jié)課的教學(xué)內(nèi)容中,學(xué)生根據(jù)自己的水平挑戰(zhàn)合適難度的題目。OJ的算法題采用實時大數(shù)據(jù)評測,學(xué)生在OJ上自主提交自己的算法答案后就能立即知道對錯,便于訂正。整個學(xué)習(xí)過程都是學(xué)生自主進(jìn)行問題分析、算法設(shè)計、程序編寫并選擇感興趣的問題進(jìn)行舉一反三的練習(xí)。學(xué)生根據(jù)自己的水平選擇合適難度的算法問題進(jìn)行探究解決,實現(xiàn)了基于最近發(fā)展區(qū)的個性化學(xué)習(xí),有助于計算思維的培養(yǎng)。
計算思維培養(yǎng)實踐及效果
1.每節(jié)課提前準(zhǔn)備不同難度的算法題
教師根據(jù)教學(xué)內(nèi)容,準(zhǔn)備不同難度的算法題,高一Python教學(xué),分為順序、選擇、循環(huán)、函數(shù)等幾個核心章節(jié),針對每個章節(jié),分別選擇不同難度的題目。例如,在選擇算法模塊里,教師可以根據(jù)核心素養(yǎng)準(zhǔn)備不同難度的項目問題(如右表)。
2.建構(gòu)新知,根據(jù)大數(shù)據(jù)確定最近發(fā)展區(qū)
4個項目問題對應(yīng)不同的計算思維水平,在教師講授完if...else...格式特點后,學(xué)生嘗試解決問題1,問題1解決體現(xiàn)出基本的選擇型計算思維達(dá)成,50%的學(xué)生寫不出問題2的求余函數(shù),問題3學(xué)生因為問題2卡住了,就不敢繼續(xù)探究,其實問題3非常簡單,這里鍛煉學(xué)生探究未知世界的勇氣。到了問題4,讀懂題目的含義非常重要,如果沒有計算思維中界定問題的能力,問題4就很難下手,而大數(shù)據(jù)的實際情況也表明,問題4大約有60%的學(xué)生都無法找到入手點。
根據(jù)課堂大數(shù)據(jù)實時評測可以找到每個學(xué)生的最近發(fā)展區(qū),有助于針對性地解決學(xué)生存在的問題。
3.提供微視頻,根據(jù)學(xué)情自主或合作學(xué)習(xí)
教師將事先準(zhǔn)備的微視頻放在OJ平臺上,學(xué)生解決第一個問題后,如果第二個問題遇到難處,可以自己查看微視頻學(xué)習(xí)mod運算如何寫。第二個問題順利解決的學(xué)生可以直接進(jìn)入問題3,挑戰(zhàn)實際問題解決能力。同樣,個別計算思維能力強的學(xué)生會提前進(jìn)入問題4的挑戰(zhàn),也可以同伴互助討論,或自主學(xué)習(xí)指導(dǎo)的微視頻,成功后可以擔(dān)任教師的助手,幫助班級其他同學(xué)完成對問題的解答。
基于OJ進(jìn)行自主學(xué)習(xí),學(xué)生自己選擇合適的難度進(jìn)行挑戰(zhàn),當(dāng)遇到問題的時候,選擇教師提供的支架微視頻進(jìn)行輔助突破,精準(zhǔn)地挑戰(zhàn)自己的思維難點,逐步培養(yǎng)計算思維。
4.針對課堂實時評價進(jìn)行精準(zhǔn)補償教學(xué)
在學(xué)生自主學(xué)習(xí)的過程中,教師根據(jù)OJ平臺上的大數(shù)據(jù)完成情況示意圖實時了解學(xué)生的完成情況,OJ還提供了代碼查看功能,教師可以實時將不同思路的算法代碼分享給學(xué)生,過程性評價和表現(xiàn)性評價同步進(jìn)行并嵌入教學(xué)過程中,培養(yǎng)學(xué)生的計算思維。同時,針對問題4可以在學(xué)生自主學(xué)習(xí)的基礎(chǔ)上進(jìn)行全班輔助講解,幫助學(xué)生更好地分析問題,理解選擇算法。本節(jié)課的反饋結(jié)果也可以作為下節(jié)課的學(xué)情基礎(chǔ),利用OJ尋找到每個學(xué)生的最近發(fā)展區(qū),實現(xiàn)教—學(xué)—評深度融合。
總結(jié)與啟示
因材施教不僅僅關(guān)注學(xué)生已有認(rèn)知能力,更關(guān)注學(xué)生能夠到達(dá)的最近發(fā)展區(qū),在大數(shù)據(jù)時代,利用OJ可以快速測試每個學(xué)生的最近發(fā)展區(qū),并根據(jù)需要提供自主學(xué)習(xí)的微視頻,以促進(jìn)學(xué)生計算思維的養(yǎng)成。實時的評價促進(jìn)教學(xué)方式和教學(xué)進(jìn)度發(fā)生巨大的變化,知識的建構(gòu)從教師靜態(tài)統(tǒng)一的構(gòu)建轉(zhuǎn)變?yōu)橐詫W(xué)生為中心的自主動態(tài)變化的構(gòu)建。期待大數(shù)據(jù)時代,基于數(shù)據(jù)的教學(xué)能夠在每一個學(xué)科真正發(fā)生,減輕學(xué)生的學(xué)習(xí)負(fù)擔(dān),提高學(xué)習(xí)效率。
參考文獻(xiàn):
[1]Wing,J.M.Computational Thinking[J].Communications of the ACM,2006,49(03):33-35.
[2]ISTE & CSTA.Operational Definition of Computational Thinking for K-12 Education[EB/OL].2011,252(06):28-30.
[3]中華人民共和國教育部.普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)[S].北京:人民教育出版社,2018.
[4]任友群,隋豐蔚,李鋒.數(shù)字土著何以可能?——也談計算思維進(jìn)入中小學(xué)信息技術(shù)教育的必要性和可能性[J].中國電化教育,2016(01):2-8.
[5]謝忠新,曹楊璐.中小學(xué)信息技術(shù)學(xué)科學(xué)生計算思維培養(yǎng)的策略與方法[J].中國電化教育,2015(11):116-120.
[6]曹蓉.基于項目的信息技術(shù)學(xué)習(xí)——以《智能聲控?zé)簟芬徽n為例[J].教育研究與評論(中學(xué)教育教學(xué)),2020(11):55-58.
[7]王文靜.維果茨基“最近發(fā)展區(qū)”理論對我國教學(xué)改革的啟示[J].心理學(xué)探新,2000(02):17-20.
[8]張浩斌.基于開放式云平臺的開源在線評測系統(tǒng)設(shè)計與實現(xiàn)[J].計算機科學(xué),2012,39(S3):339-343.
作者簡介:曹蓉,女,碩士,中學(xué)一級教師,江蘇省南京外國語學(xué)校教師。
本文是江蘇省教育科學(xué)“十三五”規(guī)劃課題“信息學(xué)拔尖創(chuàng)新人才培養(yǎng)模式的校本探索”的階段性成果(編號:B-b/2020/02/70)。