謝忠新,曹楊璐
(上海市浦東教育發(fā)展研究院,上海 200135)
中小學(xué)信息技術(shù)學(xué)科學(xué)生計算思維培養(yǎng)的策略與方法
謝忠新,曹楊璐
(上海市浦東教育發(fā)展研究院,上海 200135)
計算思維是當前國際計算機界和教育界較為關(guān)注的一個重要的概念,在中小學(xué)信息技術(shù)課程實施過程中如何有效培養(yǎng)學(xué)生的計算思維,是中小學(xué)信息技術(shù)學(xué)科教師十分關(guān)注的內(nèi)容。該文闡述了計算思維的概念與內(nèi)涵,結(jié)合目前中小學(xué)信息技術(shù)課程的目標,指出計算思維在中小學(xué)信息技術(shù)課程中的重要作用。根據(jù)計算思維包含的算法思維、評估、分解、抽象、概括這五大要素,分別設(shè)計了基于計算思維某一方面培養(yǎng)的單個課堂活動,通過具體介紹英國中小學(xué)計算課程的一個培養(yǎng)計算思維的課堂實例詳細分析如何在信息技術(shù)學(xué)科教學(xué)中落實對學(xué)生計算思維的培養(yǎng),最終總結(jié)出在信息技術(shù)學(xué)科中培養(yǎng)學(xué)生計算思維的方法與策略,期望對我國中小學(xué)信息技術(shù)學(xué)科的教學(xué)提供一定參考。
計算思維;教學(xué);策略;信息技術(shù)
計算思維是當前國際信息技術(shù)教育領(lǐng)域廣為關(guān)注的一個重要內(nèi)容,目前國內(nèi)高校信息技術(shù)教育領(lǐng)域也正在研究與關(guān)注計算思維。2010年7月,教育部高等學(xué)校計算機基礎(chǔ)課程教學(xué)指導(dǎo)委員會在西安的會議上發(fā)布了《九校聯(lián)盟(C9)計算機基礎(chǔ)教學(xué)發(fā)展戰(zhàn)略聯(lián)合聲明》[1],確定了計算機基礎(chǔ)課程的教學(xué)改革,此次教學(xué)改革是以計算思維為核心。在國內(nèi)外中小學(xué)信息技術(shù)教育領(lǐng)域,計算思維也是課程改革的重點關(guān)注內(nèi)容。例如2013年英國將原有的信息通信技術(shù)課程(簡稱ICT課程)改名為計算課程(Computing),在課程理念、課程內(nèi)容等方面都發(fā)生了深刻變革。從新的課程標準看,計算課程更能凸顯對學(xué)生計算思維、創(chuàng)新思維和批判性思維的培養(yǎng)。在英國,計算思維已經(jīng)作為中小學(xué)信息技術(shù)課程的重要內(nèi)容之一。美國計算機學(xué)科教師協(xié)會(Computer Science Teacher Association,即CSTA)2011年推出了新版本“K-12計算機課程標準”,計算思維是其重要課程內(nèi)容之一。中國中小學(xué)信息技術(shù)新課程標準修訂工作也在啟動,課程標準研制也開始涉及計算思維的能力培養(yǎng)。因此,在中小學(xué)信息技術(shù)課程教學(xué)中如何有效實施計算思維培養(yǎng)是值得探討的話題。
計算思維(Computational Thinking)這一概念的提出,最早是在2006年3月,周以真(Jeannette M.Wing)教授在美國計算機權(quán)威刊物Communications of the ACM上提出的,周教授當時任美國卡內(nèi)基·梅隆大學(xué)(CMU)計算機科學(xué)系主任,現(xiàn)任美國基金會(MSP)計算機和信息科學(xué)與工程部(CISE)主任。周教授認為,計算思維是運用計算機科學(xué)的基礎(chǔ)概念進行問題求解、系統(tǒng)設(shè)計、以及人類行為理解等涵蓋計算機科學(xué)之廣度的一系列思維活動[2]。根據(jù)周教授的觀點[3],計算思維就是通過簡略、融入、轉(zhuǎn)換和仿真的方法把一個看起來比較困難的問題重新解釋成一個人們知道用什么方法解決的問題,計算思維與人們的日常生活及工作密切相關(guān),應(yīng)為人類不可或缺的一種能力。
計算思維這一概念一經(jīng)提出,引起了學(xué)術(shù)界廣大學(xué)者的共鳴。2011年,國際教育技術(shù)協(xié)會(ISTE)和計算機科學(xué)教師協(xié)會(CSTA)對計算思維這一概念進行了進一步的闡釋,對此下了一個操作性的定義,指出計算思維是一個用來解決問題的過程,有以下六個特點[4]:(1)制定問題,并且能夠使用外界工具如計算機和其他工具等幫助解決這個問題;(2)組織和分析數(shù)據(jù),要符合邏輯;(3)通過抽象,如模型、仿真等,重現(xiàn)數(shù)據(jù);(4)通過一系列有序的步驟也就是算法思想,支持自動化的解決方案;(5)識別、分析和實施可能的解決方案,找到最有效的方案,并且有效結(jié)合這些步驟和資源;(6)將該問題的求解過程進行推廣并移植到更廣泛的問題中[5]。英國中小學(xué)信息技術(shù)課程提到的計算思維,認為用計算機來解決問題分為兩個步驟:首先是想好解決問題的具體步驟,然后運用專業(yè)技術(shù)能力通過計算機來實現(xiàn)。計算思維描述了當我們思考如何利用計算機來解決問題時所利用的過程(Processes)與方法(Approaches)。2013年,南安普敦大學(xué)的Cynthia Selby博士和John Woollard博士提出計算思維包括算法思維(Algorithmic Thinking )、評估(Evaluation)、分解(Decomposition)、抽象(Abstraction)、概括(Generalisation)這五個方面的要素[6],如圖1所示。
圖1 計算思維五個方面
根據(jù)以上的諸多定義和特點,我們可以這樣認識計算思維:計算思維不是對計算機的思考,也不是像計算機那樣思維。因為計算機本身是沒有思維的,計算機思維是人的思維,是人類求解問題的一條途徑[7],是一種描述當我們思考如何利用計算機來解決問題時所采用的過程和方法。它與人們的學(xué)習(xí)、生活密切相關(guān),就像日常生活中人們讀書寫字做算術(shù)一樣,計算思維成為人人都具備的,最普遍、最適合、最不可或缺的思維方式。
培養(yǎng)和提升學(xué)生的信息素養(yǎng)是目前中小學(xué)信息技術(shù)課程的目標。學(xué)生的信息素養(yǎng)表現(xiàn)為有能力使用信息技術(shù)工具獲取加工、管理、表達與交流信息,有能力對信息活動的整個過程、方法、結(jié)果進行評價。在熟悉利用現(xiàn)代技術(shù)條件和環(huán)境的基礎(chǔ)上,有能力發(fā)表自己的觀點,進行思想交流,開展合作,從而能解決學(xué)習(xí)以及生活中出現(xiàn)的實際問題。由于年齡及適應(yīng)能力的差異,小學(xué)、初中、高中不同階段的目標側(cè)重點會有所不同。
中小學(xué)信息技術(shù)課程學(xué)生學(xué)習(xí)信息技術(shù)相關(guān)知識與原理,掌握信息技術(shù)工具與軟件的相關(guān)操作技能,關(guān)注學(xué)生運用信息技術(shù)分析問題與解決問題能力培養(yǎng)的同時,更加關(guān)注學(xué)生學(xué)科思維的培養(yǎng)。計算思維更重要的是將計算機的思維不自覺地應(yīng)用到生活和學(xué)習(xí)中去[8]。面對不斷變化的信息社會,信息技術(shù)課程并不應(yīng)該把每位學(xué)生培養(yǎng)成信息技術(shù)的使用者、程序設(shè)計專家,而是希望學(xué)生能夠具有信息技術(shù)學(xué)科的思維方式。信息技術(shù)的發(fā)展與更新是非??斓?,新的技術(shù)與新的設(shè)備、新的工具軟件不斷出現(xiàn),系統(tǒng)與軟件的版本也在不斷更新,因此中小學(xué)信息技術(shù)課程的內(nèi)容不應(yīng)該重點關(guān)注信息技術(shù)本身,而應(yīng)該關(guān)注中小學(xué)信息技術(shù)課程的學(xué)科思維。學(xué)科知識與學(xué)科思維發(fā)展的結(jié)合[9],能幫助學(xué)生在知識學(xué)習(xí)的過程中形成獨特的學(xué)科思維方式,全面理解生活中的世界,讓學(xué)生在“學(xué)技術(shù)”“用技術(shù)”的基礎(chǔ)上,能夠從現(xiàn)實情境中,批判性地認識技術(shù)變革給信息環(huán)境帶來的整體影響,并應(yīng)用學(xué)科思維解決信息生活中的現(xiàn)實問題。在這樣一個大環(huán)境下,信息課程的內(nèi)容體系會有所變化[10],更傾向于給學(xué)生增加更多的機會發(fā)展計算思維。
中小學(xué)信息技術(shù)課程的學(xué)科思維應(yīng)該關(guān)注學(xué)生計算思維、批判性思維與創(chuàng)新思維,其中學(xué)生計算思維應(yīng)該作為中小學(xué)信息技術(shù)課程的重要目標。在信息化時代的今天,具有計算思維,能夠熟練運用新興的計算機技術(shù)和手段進行學(xué)習(xí)與工作,能夠解決專業(yè)問題是信息化社會人才必須具有的素質(zhì),在中小學(xué)信息技術(shù)教育中,教學(xué)生掌握計算思維比單純的學(xué)習(xí)操作計算機更為重要。
Selby和Woollard博士關(guān)于計算思維的觀點比較適合中小學(xué)信息技術(shù)教育,計算思維具體包括算法思維、評估、分解、抽象、概括。其中“算法思維”是一種通過明確定義的步驟來解決問題的方法,而不是計算出一個問題的答案,是讓學(xué)生們自主開發(fā)一組指令或規(guī)則,不論是人還是一臺計算機。如果準確地遵循與執(zhí)行這組指令或規(guī)則,就會得出問題答案的類似這種解決問題的方法?!霸u估”確保一個算法的解決方案是最佳方法,各種算法的性能都需要進行評估:答案是否正確?速度是否足夠快?對資源的占用是否最經(jīng)濟?是否方便人們使用?是否能促進合理經(jīng)驗的產(chǎn)生?因為一個理想的解決方案不可能滿足所有這些條件,所以需要綜合考慮這些指標對算法進行整體評估?!胺纸狻笔且环N根據(jù)整體的各個組成部分思考算法、流程、系統(tǒng)、問題的方式,這些獨立的部分可以被單獨來理解、解決、開發(fā)和評估,這使復(fù)雜的問題更容易解決,使得大型的系統(tǒng)更容易設(shè)計?!俺橄蟆笔橇硪环N使問題或系統(tǒng)更容易思考的方式,它涉及隱藏細節(jié)——刪除不必要的復(fù)雜性,使得問題在沒有任何損失的情況下變得更容易,抽象是一種用來更容易創(chuàng)建復(fù)雜算法和整個系統(tǒng)的方法,關(guān)鍵是選擇好系統(tǒng)的表示方式,不同表示方式使得不同的事情更容易做。“概括”是一種基于先前已經(jīng)解決的問題快速解決新問題的方式,我們可以對解決一些特定問題算法進行改造,使其能解決所有類似問題,然后當遇到一個新問題時,我們可以應(yīng)用這個通用的解決方案。
計算思維由算法思維、評估、分解、抽象、概括這五個方面構(gòu)成,在中小學(xué)信息技術(shù)課程實施過程中如何有效培養(yǎng)學(xué)生的計算思維,是中小學(xué)信息技術(shù)學(xué)科教師十分關(guān)注的內(nèi)容。信息技術(shù)學(xué)科教師對于學(xué)生計算思維培養(yǎng)關(guān)注最多的是開展算法與程序設(shè)計教學(xué),信息技術(shù)課程標準中[11],“算法與程序設(shè)計”是高中的一個選修模塊,該內(nèi)容是讓學(xué)生進一步體驗算法的思想。實際上算法思維只是計算機思維的一個方面,在中小學(xué)信息技術(shù)教學(xué)中,不僅僅只是算法與程序設(shè)計模塊能較好地培養(yǎng)計算思維中的算法思維,在其他課程內(nèi)容模塊中,只要精心組織好培養(yǎng)計算思維的課堂活動,也都可以很好地培養(yǎng)學(xué)生計算思維,關(guān)鍵是教師要結(jié)合信息技術(shù)課程內(nèi)容挖掘與精心設(shè)計計算思維培養(yǎng)的課堂活動,如圖2所示。
圖2 中小學(xué)信息技術(shù)課程培養(yǎng)學(xué)生計算思維的方法
在進行中小學(xué)信息技術(shù)學(xué)科課堂教學(xué)過程的設(shè)計時,教師可以結(jié)合課堂教學(xué)內(nèi)容針對計算思維的其中一種思維的培養(yǎng),設(shè)計課堂某個教學(xué)環(huán)節(jié)的活動,也就是一節(jié)課關(guān)注計算思維的某一方面思維,教師也可以結(jié)合課堂教學(xué)內(nèi)容,設(shè)計課堂整體教學(xué)活動。在教學(xué)活動中,關(guān)注計算思維的多個方面的培養(yǎng),也就是在一節(jié)課中設(shè)計計算思維的多個方面內(nèi)容。
計算思維包括了算法思維、評估、分解、抽象、概括等多種思維方式,在課堂教學(xué)活動設(shè)計時可針對計算思維的某方面思維培養(yǎng),結(jié)合教學(xué)內(nèi)容單獨設(shè)計某個環(huán)節(jié)的課堂教學(xué)活動。
1.算法思維培養(yǎng)的課堂活動
例如:高中“算法與程序設(shè)計”模塊,在“算法的初步認識”教學(xué)中,教師可以設(shè)計“猜數(shù)字”課堂游戲活動。老師自己選擇 1 到 100 之間的某個數(shù)字,請同學(xué)們猜猜是什么數(shù)字?學(xué)生可以問老師關(guān)于數(shù)的問題,老師只能回答“是”或“不是”,并且每個學(xué)生只可以問老師一個問題。
第一次,教師選擇一個1到100之間的數(shù)字,要求學(xué)生隨機猜測數(shù)字。
第二次,教師重新選擇一個1到100之間的數(shù)字,要求學(xué)生按順序從數(shù)字“1”開始猜測,例如“是1嗎?”“是2嗎?”允許他們有盡可能多的機會去猜數(shù)字,最后解釋這就是所謂的線性查找。
第三次,教師再選擇一個1到100之間的數(shù)字,請同學(xué)們猜,猜之前教師向?qū)W生解釋他們已經(jīng)知道的數(shù)字是小于100,所以建議他們問“是小于50嗎?”,然后再問“是少于 25嗎? ”或“是小于75?”,告訴學(xué)生以保持減半直到猜到這個數(shù),解釋這種方法就是二分查找。
三次猜數(shù)游戲活動后,組織學(xué)生討論哪種方法更快。當他們熟悉了如何使用二分查找后,使用1到1000數(shù)字重新來玩這個猜數(shù)游戲。
通過這個游戲,讓學(xué)生體會問題的解決有具體的步驟與方法,同時讓學(xué)生在真實的猜數(shù)字游戲中體驗達到同一個目的或解決同一個問題可以運用不同的方法,通過總結(jié)和歸納不同方法解決的共通之處,從而更好地理解什么是算法,培養(yǎng)學(xué)生的算法思維。
2.分解思維培養(yǎng)的課堂活動
例如:初中信息技術(shù)課程,在“計算機硬件組成”教學(xué)中,教師可以以一臺舊的桌面電腦為例,拆開這臺電腦,來向?qū)W生展示與介紹計算機內(nèi)部的各個組成部分,讓學(xué)生理解計算機是由更小組件連接在一起的系統(tǒng),其中一些組件仍然可以進一步分解。雖然利用插圖也可能看到計算的內(nèi)部結(jié)構(gòu),但是利用拆解一臺臺式電腦的方法,使學(xué)生能更好地理解計算機的組成與內(nèi)部結(jié)構(gòu),同時培養(yǎng)學(xué)生通過分解來認識問題、分析與解決問題的意識與能力。
3.抽象思維培養(yǎng)的課堂活動
例如:鼓勵正在學(xué)習(xí)Flash動畫設(shè)計與制作的學(xué)生們創(chuàng)建“乒乓球比賽”的游戲動畫,因為這個動畫是基于現(xiàn)實世界系統(tǒng),因此學(xué)生們得需要使用一些抽象來處理動畫中系統(tǒng)的復(fù)雜性。例如,在一個簡單的乒乓球比賽游戲動畫中,模擬包括乒乓球是如何移動的,以及它如何反彈的,在設(shè)計與制作這個動畫時忽略空氣阻力、乒乓球重力與旋轉(zhuǎn)等因素。
當用計算機對問題進行求解時,首先要對問題進行分析,明確問題的要求,然后要抽象成適合在計算機表示的數(shù)據(jù)結(jié)構(gòu)和形式化的數(shù)學(xué)模型,同時要忽略一些復(fù)雜的細節(jié),因此抽象在用計算機解決問題過程中十分重要的。
4.概括思維培養(yǎng)的課堂活動
例如:“位圖和矢量圖”是信息技術(shù)學(xué)科教學(xué)中學(xué)生需要理解的兩個相似的概念。學(xué)生在學(xué)習(xí)了位圖的概念后,教師可以通過展示大量矢量圖的實例,顯示矢量圖的性質(zhì),引導(dǎo)學(xué)生把矢量圖與位圖進行對比,尋找它們之間的聯(lián)系與異同,最后引導(dǎo)學(xué)生概括出矢量圖的本質(zhì)屬性與概念。
在信息技術(shù)學(xué)科知識教學(xué)過程中,教師可以引導(dǎo)學(xué)生尋找新舊知識之間的聯(lián)系,找到新舊知識之間的異同,引導(dǎo)學(xué)生運用遷移規(guī)律概括出新知識。
在中小學(xué)信息技術(shù)學(xué)科教學(xué)過程中,除了有針對性地設(shè)計有關(guān)計算思維某方面思維培養(yǎng)的活動外,也可以針對具體學(xué)科教學(xué)內(nèi)容,在整體設(shè)計一節(jié)課的課堂教學(xué)活動時,充分挖掘計算思維的各方面內(nèi)容,或者充分利用計算的一種或多種思維方式來設(shè)計課堂教學(xué)活動。以下通過一個英國中小學(xué)計算課程的培養(yǎng)計算思維的課堂實例來分析如何在信息技術(shù)學(xué)科教學(xué)中落實學(xué)生計算思維的培養(yǎng)。學(xué)科知識主題:“網(wǎng)絡(luò)與通信——使用一種二進制協(xié)議來傳輸信息”[12],設(shè)計的相關(guān)課堂教學(xué)活動及說明如下表所示。
“使用一種二進制協(xié)議來傳輸信息”教學(xué)活動及說明表
續(xù)表
從上述的一個完整課堂教學(xué)案例中可以發(fā)現(xiàn),可以基于計算思維的具體內(nèi)容來設(shè)計課堂教學(xué)活動,能更好地讓學(xué)生理解與掌握信息技術(shù)學(xué)科的相關(guān)知識與技能。例如,通過“算法思維”把問題分解成具體的有序、詳細的步驟,培養(yǎng)學(xué)生利用信息技術(shù)進行分析問題與解決問題;通過“歸納(概括)”思維,把利用信息技術(shù)解決問題的方法遷移應(yīng)用到更加廣泛的問題解決中,把對某種信息技術(shù)的概念與原理的理解方法遷移到其他類似概念與原理的理解中。另外,要充分挖掘信息技術(shù)學(xué)科教學(xué)內(nèi)容所蘊含的計算思維的相關(guān)內(nèi)容,在學(xué)生理解與掌握信息技術(shù)相關(guān)知識與技能的同時,培養(yǎng)學(xué)生的計算思維。
在中小學(xué)信息技術(shù)學(xué)科教學(xué)中,教師們對于信息技術(shù)的相關(guān)知識與原理一般都能較正確地把握,對信息技術(shù)工具與軟件的相關(guān)操作技能有效處理,但是有時候教師在教學(xué)過程中注重傳授技術(shù)應(yīng)用的同時,忽略了對學(xué)生計算思維的培養(yǎng)。因此,一方面,我們要重視學(xué)生計算思維的培養(yǎng);另一方面,課程中的計算思維是需要教師在教學(xué)的經(jīng)驗中不斷挖掘,這包括挖掘基于學(xué)科教學(xué)內(nèi)容對應(yīng)的計算思維,也包括教師們通過對計算思維各個要素的思考,設(shè)計出能培養(yǎng)學(xué)生對應(yīng)相關(guān)方面能力的相關(guān)課堂活動。面向?qū)W科思維的信息技術(shù)課程教學(xué)中要避免信息技術(shù)學(xué)習(xí)的重復(fù)記憶和機械應(yīng)用,要在學(xué)生掌握信息知識與技能的基礎(chǔ)上,引導(dǎo)學(xué)生用信息技術(shù)學(xué)科思維全面認識和思考這個復(fù)雜的信息化社會,作出科學(xué)、專業(yè)的信息化判斷,讓學(xué)生更好地在信息化社會中生存、創(chuàng)新與發(fā)展。
[1]何欽銘,陸漢權(quán),馮博琴.計算機基礎(chǔ)教學(xué)的核心任務(wù)是計算思維能力的培養(yǎng)——《九校聯(lián)盟(C9)計算機基礎(chǔ)教學(xué)發(fā)展戰(zhàn)略聯(lián)合聲明》解讀[J].中國大學(xué)教學(xué),2010,(9):5-9.
[2]J eannette M.Wing.Computational Thinking[J].Communications of the ACM,2006,49(3):33-35.
[3]王榮良.計算思維對中小學(xué)信息技術(shù)課程的影響初探[J].中國教育技術(shù)裝備,2012,(27):56-57.
[4]郭守超,周睿,鄧常梅.基于App Inventor和計算思維的信息技術(shù)課堂教學(xué)研究[J].中國電化教育,2014,(3):91-96.
[5]Anon.Operational Definition of Computational Thinking for k-12 Education [DB/OL].http://www.iste.org/Libraries/PDFs/Operational_Definition_of_Computational_Thinking.sflb.ashx,2012-04-15.
[6]Selby,C.,Woollard,J.Computational Thinking:The Developing Definition[DB/OL].http://eprints.soton.ac.uk/356481,2014-06-23.
[7]袁開榜.二十一世紀,人們應(yīng)該具有計算思維能力[J].計算機教育,2011,(3):30-33.
[8]侯慧玲,王新龍,李學(xué)斌.高中信息技術(shù)課程教學(xué)中計算思維的培養(yǎng)[J].長治學(xué)院學(xué)報,2011,(5):114-116.
[9]Gardner,H.The Disciplined Mind:What All Students Should Understand[M].New York:Simon and Schuster,1999.14-20.
[10]劉向永,郭鵬飛,張貴芹.我國信息技術(shù)課程發(fā)展的動力分析與可能路徑[J].中國電化教育,2014,(12):38-54.
[11]王榮良.信息技術(shù)課程中算法學(xué)習(xí)的價值探索[J].中國電化教育,2008,(8):79-81.
[12]Paul Curzon,Mark Dorling,Thomas Ng.Developing computational thinking in the classroom:a framework[DB/OL].Http://community.computingatschool.org.uk,2014-06-08.
謝忠新:特級教師,博士,研究方向為教育信息化(xiezhongxin@163.com)。
曹楊璐:教師,碩士,研究方向為教育信息化(cyanglu@126.com)。
2015年8月15日
責(zé)任編輯:宋靈青
The Strategy and Method of the Students’ Computational Thinking Training on Information Technology Discipline in Primary and Middle School
Xie Zhongxin,Cao Yanglu
(Pudong Institute of Educational Development,Shanghai 200135)
Computational thinking is an important concept in the field of international computer and education,how to cultivate the students' computational thinking in the course of the implementation of the information technology curriculum in primary and secondary schools is an important part that teachers should be concerned about.This paper expounds the concept and connotation of computational thinking,combined with the objective of information technology curriculum,points out that the computational thinking plays an important role in the course of information technology in primary and secondary schools.According to the fi ve factors (Algorithmic Thinking,Evaluation,Decomposition,Abstraction,Generalisation)that are included in computational thinking,a single classroom activity based on one part of computational thinking is designed.An example of a computing course in the UK is presented in detail,analyzes how to implement the training of students' computing thinking in the course of information technology.In the end,the paper summarizes the methods and strategies of cultivating students' computing thinking in information technology,and it is expected to provide some reference for the teaching of information technology in primary and secondary schools in China.
Computational Thinking; Teaching ; Methods and Strategies; Information Technology
G434
A
1006—9860(2015)11—0116—05