王能汁
(福建省廈門實(shí)驗(yàn)中學(xué) 福建 廈門 361000)
信息技術(shù)作為當(dāng)今先進(jìn)生產(chǎn)力的代表,已經(jīng)成為我國(guó)經(jīng)濟(jì)發(fā)展的重要支柱和網(wǎng)絡(luò)強(qiáng)國(guó)的戰(zhàn)略支撐。提升我國(guó)公民的信息素養(yǎng),增強(qiáng)個(gè)體在信息社會(huì)的適應(yīng)力和創(chuàng)造力,對(duì)個(gè)人發(fā)展、國(guó)力增強(qiáng)、社會(huì)變革有著十分重大的意義。新版普通高中信息技術(shù)課程標(biāo)準(zhǔn)指出,普通高中信息技術(shù)課程是一門旨在全面提升學(xué)生信息素養(yǎng),幫助學(xué)生掌握信息技術(shù)基礎(chǔ)知識(shí)與技能、增強(qiáng)學(xué)生信息意識(shí)、發(fā)展計(jì)算思維、提高數(shù)字化學(xué)習(xí)與創(chuàng)新能力、樹立正確的信息社會(huì)價(jià)值觀和責(zé)任感的基礎(chǔ)課程。
在探討通過(guò)程序設(shè)計(jì)這門課程培養(yǎng)學(xué)生計(jì)算思維之前,首先,我們要知道計(jì)算思維是如何定義的,其次,要搞清楚計(jì)算思維的本質(zhì)內(nèi)容是什么;最后,要研究計(jì)算思維與程序設(shè)計(jì)之間有什么關(guān)系,或者說(shuō)如何通過(guò)程序設(shè)計(jì)這門課程來(lái)培養(yǎng)學(xué)生的計(jì)算思維能力。
2006年,卡內(nèi)基梅隆大學(xué)周以真教授第一次提出了計(jì)算思維這個(gè)概念。他對(duì)計(jì)算思維做出這樣的界定:“計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念去求解問(wèn)題、設(shè)計(jì)系統(tǒng)和理解人類的行為。它包括了涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動(dòng)”。信息技術(shù)新課程標(biāo)準(zhǔn)也給出了定義:計(jì)算思維是指?jìng)€(gè)體運(yùn)用計(jì)算機(jī)科學(xué)領(lǐng)域的思想方法,在形成問(wèn)題解決方案的過(guò)程中產(chǎn)生的一系列思維活動(dòng)。具備計(jì)算思維的學(xué)生,在信息活動(dòng)中能夠采用計(jì)算機(jī)可以處理的方式界定問(wèn)題、抽象特征、建立結(jié)構(gòu)模型、合理組織數(shù)據(jù);通過(guò)判斷、分析與綜合各種信息資源,運(yùn)用合理的算法形成解決問(wèn)題的關(guān)鍵;總結(jié)利用計(jì)算機(jī)解決問(wèn)題的過(guò)程與方法,并遷移到與之相關(guān)的其他問(wèn)題的解決中。
可以看出,計(jì)算思維的本質(zhì)就是抽象與自動(dòng)化;我們從抽象和自動(dòng)化這兩個(gè)核心概念出發(fā),進(jìn)一步解剖??梢苑譃樗膫€(gè)步驟:簡(jiǎn)化問(wèn)題,識(shí)別規(guī)律,數(shù)學(xué)抽象,設(shè)計(jì)算法。
簡(jiǎn)化問(wèn)題:是指將大的復(fù)雜的問(wèn)題簡(jiǎn)化成一個(gè)個(gè)具體的特例或者是規(guī)模較小的,可以直接解決的問(wèn)題。
識(shí)別規(guī)律:通過(guò)個(gè)例模擬,找到規(guī)律,趨勢(shì)和規(guī)則。
數(shù)學(xué)抽象:從識(shí)別出的規(guī)律中進(jìn)一步抽象出普遍的規(guī)則,并進(jìn)一步證明正確性。
設(shè)計(jì)算法:根據(jù)抽象出的模型設(shè)計(jì)詳細(xì)的解決這類問(wèn)題的步驟,方便計(jì)算機(jī)解決問(wèn)題。
2.1 教學(xué)策略選擇。為了提高學(xué)生分析問(wèn)題與解決問(wèn)題的能力,必須加強(qiáng)學(xué)生的計(jì)算思維能力培養(yǎng)。因此,為了更好地訓(xùn)練和培養(yǎng)學(xué)生的計(jì)算思維能力,在程序設(shè)計(jì)課程的授課中最好采用任務(wù)驅(qū)動(dòng)教學(xué)法,亦即以問(wèn)題或任務(wù)為導(dǎo)向的教學(xué)模式。
任務(wù)驅(qū)動(dòng)教學(xué)法是一種普遍且具有一定教學(xué)效果的方法,本課題中主要采用任務(wù)驅(qū)動(dòng)教學(xué)法來(lái)提高學(xué)生的學(xué)習(xí)興趣。此方法是以解決實(shí)際問(wèn)題,完成特定任務(wù)為主的教師與學(xué)生,學(xué)生與學(xué)生之間多維互動(dòng)的教學(xué)方法。解決問(wèn)題的過(guò)程是學(xué)生主動(dòng)構(gòu)建知識(shí)與經(jīng)驗(yàn)的過(guò)程,通過(guò)新知識(shí)和原有的知識(shí)的交互作用,不斷豐富自身的知識(shí)和提升自己的能力。利用任務(wù)驅(qū)動(dòng)法可以有效、合理設(shè)計(jì)教學(xué)任務(wù)與分配學(xué)習(xí)任務(wù),可以有效地培養(yǎng)學(xué)生獨(dú)立思考問(wèn)題,分析問(wèn)題及解決問(wèn)題的能力。
2.2 教學(xué)過(guò)程實(shí)施。筆者將以算法與程序設(shè)計(jì)課程中“遞歸算法與遞歸程序”這一節(jié)為例來(lái)說(shuō)明教學(xué)過(guò)程中的計(jì)算思維的培養(yǎng)。
(1)問(wèn)題導(dǎo)入。遞歸作為一種算法在程序設(shè)計(jì)中被廣泛應(yīng)用,是一個(gè)過(guò)程在定義或者說(shuō)明中直接或者間接調(diào)用自己的一種方法,它通常把一個(gè)大型復(fù)雜的問(wèn)題層層轉(zhuǎn)化為一個(gè)與原問(wèn)題相似的規(guī)模較小的問(wèn)題來(lái)求解。具體來(lái)看一個(gè)例子:
有一座高度是10級(jí)臺(tái)階的樓梯,從下往上走,每一步只能跨有級(jí)或者2級(jí)臺(tái)階。要求用程序來(lái)求出一共有多少種走法。
比如,每次走1級(jí)臺(tái)階,一共走10步,這是其中一種走法。我們可以簡(jiǎn)寫成1,1,1,1,1,1,1,1,1,1,也可以每次走2級(jí)臺(tái)階,一共走5步??梢院?jiǎn)寫成2,2,2,2,2。
(2)分析問(wèn)題。
①分解問(wèn)題。
我們要求10級(jí)臺(tái)階是比較困難的,那能不能從簡(jiǎn)單的開始呢?比如1級(jí),我們就很容易知道答案為1,2級(jí)臺(tái)階答案為2,3級(jí)臺(tái)階通過(guò)排列組合的方式也不難得到答案為3,依次類推……
②識(shí)別規(guī)律。
那么這些數(shù)據(jù)之間有沒(méi)有規(guī)律呢?假設(shè)你只差最后一步到達(dá)第3級(jí)臺(tái)階,這時(shí)候會(huì)出現(xiàn)幾種情況?只有兩種:一種從第2級(jí)跨1步走到第3級(jí),一種從第1級(jí)跨2步走到第3級(jí)。
我們已知從第0級(jí)走到第1級(jí)的走法為1種,第0級(jí)走到第2級(jí)的走法為2種,那么總的走法應(yīng)該是1+2=3種。
那這個(gè)規(guī)律是否適合所有的情況呢?同樣的,假設(shè)你只差最后一步到達(dá)第10級(jí)臺(tái)階,這時(shí)候會(huì)出現(xiàn)幾種情況?只有兩種:一種從第9級(jí)跨1步走到第10級(jí),一種從第8級(jí)跨2步走到第10級(jí)。
我們已知從第0級(jí)走到第9級(jí)的走法為X種,第0級(jí)走到第8級(jí)的走法為Y種,那么總的走法應(yīng)該是X+Y種。
計(jì)算思維作為一種新的學(xué)科思維方式受到了廣泛的關(guān)注,培養(yǎng)學(xué)生的計(jì)算思維能力是信息技術(shù)學(xué)科的核心素養(yǎng)。要在程序設(shè)計(jì)課程中融入計(jì)算思維,首先需要理解計(jì)算思維的概念和方法,并把這些概念方法應(yīng)用到問(wèn)題設(shè)計(jì)之中,然后采用基于問(wèn)題,分析問(wèn)題,解決問(wèn)題的PBL模式,在分析問(wèn)題中進(jìn)一步運(yùn)用簡(jiǎn)化問(wèn)題,識(shí)別規(guī)律,數(shù)學(xué)抽象,設(shè)計(jì)算法的策略,培養(yǎng)學(xué)生的計(jì)算思維。