方金波
摘要:本文從計(jì)算思維的概念出發(fā),以計(jì)算思維的五個特征(抽象、分解、算法、評估和概括)為切入點(diǎn),提出了以人文情懷涵養(yǎng)中學(xué)程序設(shè)計(jì)教學(xué)的模式。并通過分析Python教學(xué)實(shí)例《愷撒密碼》,闡述了筆者是如何開展中學(xué)程序設(shè)計(jì)教學(xué)來培養(yǎng)學(xué)生的計(jì)算思維。
關(guān)鍵詞:計(jì)算思維;中學(xué)程序設(shè)計(jì);人文情懷
自美國卡內(nèi)基·梅隆大學(xué)周以真教授提出“計(jì)算思維”后,“計(jì)算思維”逐漸受到教育界的關(guān)注。計(jì)算思維已成為公認(rèn)的計(jì)算機(jī)科學(xué)與技術(shù)領(lǐng)域的核心素養(yǎng),并被作為信息時代除了讀寫算之外的基本能力[1]。2013 年,英國南安普敦大學(xué)的塞爾比和伍拉德博士在周以真教授提出的計(jì)算思維概念的基礎(chǔ)上,將計(jì)算思維的特征分為抽象、分解、算法思維、評估和概括五個要素。該定義和解析與計(jì)算思維教育教學(xué)有較為密切的聯(lián)系。把握計(jì)算思維核心要素的內(nèi)在層次關(guān)系,可較好的設(shè)計(jì)培養(yǎng)計(jì)算思維的教學(xué)活動,特別是程序設(shè)計(jì)的教學(xué)活動。信息技術(shù)學(xué)科是培養(yǎng)計(jì)算思維的主要載體,而程序設(shè)計(jì)與計(jì)算思維的關(guān)系是最密切的,它是培養(yǎng)計(jì)算思維的重要手段。因此,開展好程序設(shè)計(jì)教學(xué)尤為重要。
傳統(tǒng)的課堂教學(xué)以教師傳授事實(shí)性或陳述性的知識為主,這些知識僅僅是關(guān)于世界“是什么”的知識,學(xué)生很難獲得程序性知識和策略性知識[2]。傳統(tǒng)的程序設(shè)計(jì)教學(xué)是教師講授程序例子,學(xué)生模仿練習(xí)的“講—練”模式,這種模式難以有效地培養(yǎng)學(xué)生的算法思維,而且在缺乏拓展與創(chuàng)作的情況下,也不利于培養(yǎng)學(xué)生的創(chuàng)新精神和實(shí)踐能力。而基于計(jì)算思維培養(yǎng)的程序設(shè)計(jì)教學(xué),改變了傳統(tǒng)的程序設(shè)計(jì)教學(xué)模式,發(fā)展了學(xué)生抽象特征、問題分解、算法設(shè)計(jì)以及概括遷移的能力,促進(jìn)了學(xué)生計(jì)算思維的生長。
一、基于計(jì)算思維培養(yǎng)的中學(xué)程序設(shè)計(jì)教學(xué)模式
從計(jì)算思維的角度開展程序設(shè)計(jì)教學(xué),不僅能使學(xué)生更好地理解基本的程序設(shè)計(jì)原則,理解計(jì)算在解決科學(xué)問題中的作用;而且能使學(xué)生更好地分析、抽象問題,理解數(shù)據(jù)結(jié)構(gòu)的基本功能,最終設(shè)計(jì)出有效解決問題的程序設(shè)計(jì)方案。在程序設(shè)計(jì)教學(xué)實(shí)踐中,筆者發(fā)現(xiàn)以人文情懷涵養(yǎng)教學(xué),學(xué)生能更自主地學(xué)習(xí)知識與技能,能更樂于探究解決問題的方法,而且,學(xué)生的品格也得到了涵養(yǎng)。
人文情懷,是一種人文精神,即一個人的思想、學(xué)識、文化修養(yǎng)、人格情緒等在人生中的綜合體現(xiàn)。將人文情懷遷移到教學(xué)上就變成了一種自在的教學(xué)境界,這一境界就是求真、向善、臻美。人文情懷對教學(xué)的涵養(yǎng)非常寬廣,涵蓋了價(jià)值觀的引領(lǐng),批判精神、計(jì)算思維和邏輯思維的培養(yǎng),欣賞美、設(shè)計(jì)美和創(chuàng)造美的啟迪[3]。
教學(xué)過程的第一個環(huán)節(jié)是“創(chuàng)設(shè)情境”。情境是教學(xué)與學(xué)生心靈溝通的橋梁,情境創(chuàng)設(shè)巧妙,則學(xué)生更易入境生情,與學(xué)習(xí)內(nèi)容無縫對接。筆者在教學(xué)實(shí)踐中注重創(chuàng)設(shè)內(nèi)隱人文情懷的教學(xué)情境,其內(nèi)涵包括引發(fā)內(nèi)省、關(guān)注世界、追求真善美等。情境創(chuàng)設(shè)最終將教學(xué)活動引向了或求真、或向善、或臻美的境界。
教學(xué)過程的第二個環(huán)節(jié)是“問題分解,任務(wù)探究”。程序設(shè)計(jì)中的“問題”往往有復(fù)雜、繁瑣的特點(diǎn),因而需要引導(dǎo)學(xué)生采用枚舉、遞歸、分治等方法進(jìn)行問題分解。對于學(xué)習(xí)任務(wù)的設(shè)計(jì),應(yīng)遵循由易到難、由簡及繁的原則,應(yīng)符合學(xué)生的認(rèn)知規(guī)律。通過探究活動,促使學(xué)生發(fā)現(xiàn)問題,然后嘗試分析、解決問題,學(xué)生的思維能力因此得到發(fā)展。
教學(xué)過程的第三個環(huán)節(jié)是“分享與評價(jià)”。在教學(xué)中教師應(yīng)及時、到位地評價(jià)學(xué)生的作品,還應(yīng)適時展示教師自創(chuàng)或其他人的優(yōu)秀作品,給予學(xué)生創(chuàng)新方向的引領(lǐng),并引導(dǎo)學(xué)生進(jìn)行二次創(chuàng)作。最后再展示優(yōu)秀學(xué)生作品(或優(yōu)化后的作品),提升學(xué)生學(xué)習(xí)的成就感,激發(fā)學(xué)生后續(xù)的學(xué)習(xí)動力。
最后一個教學(xué)環(huán)節(jié)是“總結(jié)與提升”。教師挖掘、揭示教學(xué)任務(wù)背后內(nèi)隱的人文情懷,超越程序設(shè)計(jì)教學(xué),引領(lǐng)學(xué)生感悟求真、向善、臻美的美好境界。
二、基于計(jì)算思維培養(yǎng)的中學(xué)程序設(shè)計(jì)教學(xué)實(shí)踐
下面筆者通過Python教學(xué)實(shí)例《愷撒密碼》來闡述自己是如何開展程序設(shè)計(jì)教學(xué)來培養(yǎng)學(xué)生的計(jì)算思維的。
課堂伊始,筆者展示一些字母“Vhoi-lpsuryhphqw”,問學(xué)生是否了解其中的意義,然后引出密碼學(xué)相關(guān)概念及愷撒密碼的由來。從愷撒密碼用于古代戰(zhàn)爭的情境中,提出本節(jié)主要任務(wù):通過Python編程,利用位移替換的方法自動加密信息或解密信息。
在第二個教學(xué)環(huán)節(jié),筆者首先分析如何加密,例如將明文的字母按字母表的順序后移3位,明文為RETURN TO ROME,密文則為UHWXUQ WR URPH。接著引導(dǎo)學(xué)生抓住問題的關(guān)鍵:后移3位,明文與密文的運(yùn)算表達(dá)式該如何表達(dá)?通過進(jìn)一步的問題分析與引導(dǎo),學(xué)生發(fā)現(xiàn),字母c向后推移3個單位,可以表達(dá)為chr(ord(‘c’)+3)。當(dāng)學(xué)生編程調(diào)試后,會發(fā)現(xiàn)問題:不是26個英文都可以用上面式子運(yùn)算的。之后,筆者嘗試引導(dǎo)學(xué)生解決最后3個字母(X、Y、Z)的移位的運(yùn)算問題。抽象是計(jì)算思維的本質(zhì),這里嘗試通過抽象的方法,分析數(shù)據(jù),引導(dǎo)學(xué)生設(shè)計(jì)可計(jì)算的模型,從而達(dá)到培養(yǎng)學(xué)生計(jì)算思維的目標(biāo)。
當(dāng)學(xué)生通過編程,解密課前展示的密文“Vhoi-lpsuryhphqw”(密鑰為3)后,筆者再提出下一個探究任務(wù):已知密鑰是1至13,請解密密文“Zbywhzz fvbyzlsm”。全班13個小組,每一個小組設(shè)計(jì)一個密鑰的解密程序。全班學(xué)生分工與合作,興致頗高,最終有一個小組發(fā)現(xiàn)了明文內(nèi)容“Surpass yourself”(超越自我)。至此,學(xué)生恍然發(fā)現(xiàn)本節(jié)課解密的內(nèi)容就是我校的校風(fēng)“自強(qiáng)不息,超越自我”。學(xué)生不知覺中掌握了字符串處理的重點(diǎn)學(xué)習(xí)內(nèi)容。
在學(xué)生能編程解密確定密鑰的密文后,筆者讓學(xué)生編寫加密程序,并繼續(xù)優(yōu)化程序,使其能按自定義的密鑰加密,或解密不確定密鑰的密文。在“分享與評價(jià)”環(huán)節(jié),讓一小組學(xué)生給出密文,另一小組學(xué)生進(jìn)行解密,然后再自評或互評。之后,筆者展示了一個采用結(jié)構(gòu)化方法編寫的愷撒密碼程序。它有加密和解密兩種模式,它可直接羅列所有密鑰對應(yīng)的明文內(nèi)容,大幅度提高問題解決的效率。通過展示該程序,提升學(xué)生對編程方法的認(rèn)識,也為學(xué)生優(yōu)化程序提供了思路。
在最后的“總結(jié)與提升”環(huán)節(jié),筆者總結(jié)字符串處理的基本方法;鼓勵學(xué)生查閱漢字加密的技術(shù)資料;重申本節(jié)課解密的內(nèi)容“自強(qiáng)不息,超越自我”,并勉勵學(xué)生弘揚(yáng)校風(fēng)精神,努力向上,剛毅堅(jiān)卓,不斷地自我完善。筆者通過將含有人文情懷理念的校園文化融入程序設(shè)計(jì)當(dāng)中,讓程序設(shè)計(jì)教學(xué)得到了升華。
經(jīng)過一個學(xué)期的教學(xué)實(shí)踐,筆者發(fā)現(xiàn)基于計(jì)算思維培養(yǎng)的程序設(shè)計(jì)教學(xué)模式,能夠有效發(fā)展學(xué)生的計(jì)算思維;而將人文情懷滲透到程序設(shè)計(jì)教學(xué)中,學(xué)生均感受到了程序設(shè)計(jì)的溫度與美好,這對于學(xué)生良好品格和關(guān)鍵能力的形成大有裨益。
參考文獻(xiàn):
[1] 吳向東,王繼華.超越信息素養(yǎng)——“技術(shù)—文化”一體視域下的信息技術(shù)教育發(fā)展方向探討[J].中小學(xué)信息技術(shù)教育,2014(05):17-21.
[2] 王榮良.計(jì)算思維教育[M].上海:上??萍冀逃霭嫔?,2014:125.
[3] 方少芹.人文情懷涵養(yǎng)下創(chuàng)新思維培養(yǎng)的策略[J].中國信息技術(shù)教育,2017(05):13-15.