?

計算思維培養階段劃分與教授策略探討

2020-03-19 08:46孫立會王曉倩
中國電化教育 2020年3期
關鍵詞:皮亞杰認知發展計算思維

孫立會 王曉倩

摘要:對計算思維概念本質與結構框架的提煉是計算思維教授策略的基礎。文章以皮亞杰認知發展階段論的兒童思維發展邏輯為框架基礎,劃分計算思維培養的四階段:實體感知與行為互動中的前計算思維階段、符號象征與任務驅動中的計算思維準備階段、邏輯推演與思維抽象中的計算思維形成階段及假設推理與形式運演中的計算思維發展階段。根據各階段兒童認知心理與行為特點的不同設定相應的教學方式與策略:以實物感知與實體操作浸潤前計算思維階段、以邏輯任務與人機交互貫穿計算思維準備階段、以圖形化編程與計算參與助力計算思維形成階段、以學科領域延伸與深度邏輯推理滲透計算思維發展階段。

關鍵詞:計算思維;皮亞杰;培養階段;認知發展;教授方式

中圖分類號:G434

文獻標識碼:A

計算思維作為21世紀學生必備的一項技能,自提出以來便廣受各界關注。教育信息化蓬勃發展、智能教育如火如荼開展的先決條件為計算思維的教授與培養提供了良好的硬件環境與軟件基礎。外界商業刺激、面向未來社會人才需求都為計算思維的培養與發展提供了有力的外在助推,技術的魅力不在于技術本身而在于技術的使用,如何有效使用外在因素推動計算思維的內在培養是目前教育領域迫切需要解決的問題。計算思維的提出最早可追溯到人工智能教育先驅西蒙·派珀特(Seymour Papert),而時至今日,人們對他的技術助學思想仍未徹底理解及有效踐行;周以真(Jeannette M.Wing)教授關于計算思維的新視界將計算思維推向了更為寬廣的研究與應用領域,同時也將社會各界對計算思維的探討上升到思維認知層面。教育是裝備下一代勞動力的重要方式,課堂教學成為推廣普及計算思維的主陣地。而計算思維應該教授什么、如何教授等方法策略層面的問題仍未深入開墾,有待深耕。如今,計算思維已不是一個新鮮的名詞,但其抽象性的內涵本質為其實踐推進帶來了諸多阻礙,如何將其與教學及生活實踐接軌以使計算思維從幕后走到臺前、從思維活動反射出行為活動,需要一定的教授方法作為樞紐。計算思維的培養不可一蹴而就,應是逐漸推進的階段性過程。對計算思維培養進行階段劃分、明晰各階段的兒童思維特點及教授策略,是計算思維教授的先行之舉。

一、計算思維概念的產生及發展

對計算思維內涵本質的理解與提煉是實施相應教授策略的前提與基礎。計算思維(ComputationalThinking,簡稱CT)的雛形見于麻省理工學院教授西蒙·派珀特1 980年的著作Mindstorms: Children,Computers,and Powerful Ideas中,在此,派珀特首次提出計算思維并將其闡述為兒童在通過計算機學習時所訓練與培養的思維技能[1];2006年,周以真教授在美國計算機權威雜志Communieations of the ACM發表了Computational Thinking一文,以顛覆性的視角給計算思維以全新的定義,并奠定了之后計算思維研究與實踐的基調。周以真教授將計算思維定義為運用計算機科學基礎概念求解問題、設計系統和理解人類的行為,并描述了計算思維具有概念化、基礎化、以人類為思維主體、強調數學與工程思維的互補融合、強調思維特點及面向所有人及所有領域等六大特性[2]。這為計算思維賦予了思想高度的靈魂,由此引發了此后計算思維研究的熱潮;隨后幾年間周以真教授基于時代背景的更新及教育需求的變化不斷豐富與深化計算思維的理論及實踐內涵;2008年,她將對計算思維的認識整合到科學、技術與社會三方驅動的背景之下,對計算思維內涵的主要組成(如抽象與自動化等概念)進行了詳細探討,列舉了相關應用領域的實施案例,體現出計算思維的“無所不在”性,并厘清了計算、計算技術以及計算思維的概念邊界,計算思維是希望學習者像計算機科學家一樣思考而不是像計算機一樣思考,應該在利用好計算工具的同時更好地理解與踐行計算思維理念[3];2010年在智能人機協作時代前奏之下,周以真將計算思維闡述為制定問題及其解決方案所涉及的思維過程,以便于解決方案以一種可以有效地由信息處理代理執行的形式來表示。這些解決方案可以由人、機器或人和機器結合的方式執行[4]。 2011年,國際教育技術協會(ISTE)和計算機科學教師協會(CSTA)等制定了K-12教育中計算思維的操作性定義,認為計算思維作為解決問題的過程,具備但不限于以下特征:能夠使用計算機和其它工具來幫助解決問題;邏輯地組織和分析數據;通過模型和模擬等抽象來表示數據;通過算法思維自動化解決方案;確定、分析和實施可能的解決方案,實現步驟和資源最有效的組合;概括問題解決過程,并用于各種各樣的問題上。相對于其它的定義,操作性定義指出了培養計算思維的傾向性態度,包括:處理復雜性的信心;堅持不懈地處理困難問題;對歧義的容忍;處理開放式問題的能力;與他人溝通和合作以實現共同目標或解決方案的能力[5]。這從計算思維操作者的角度出發,不僅將計算思維的聚焦點放在問題解決的過程,同時也關注了學習者的情感態度以及思維中的“人”性層面,為理解計算思維提供了不同的維度。

在此基礎之上,計算思維教育實踐逐步走向落地,各研究者對計算思維的教學框架與實踐推進進行了諸多探討,其中最具影響力的當屬伯南與雷斯尼克(Karen Brennan&Mitchel Resnick)基于兒童編程環境Scratch構建的計算思維三維框架,框架分為三個維度,分別為計算概念:設計者在編程時所涉及的概念,包括序列、循環、并行性、事件、條件、運算符和數據;計算實踐:設計者在創建項目時參與的設計實踐,包括增量和迭代、測試和調試、重用和再混合、以及抽象和模塊化;計算觀念:設計者對自己的不斷發展的理解,對自己與他人及世界的看法,包括表達、連接和提問[6]。該框架從概念內容、實踐操作以及觀念延伸三個層面對計算思維的教學培養設定了層次路徑,成為此后諸多計算思維教學的理論支撐及實踐指導;此外,不斷有研究者在此基礎之上進行擴充及延伸,阿斯特拉罕與布里格斯(Astrachan&Briggs)基于計算機科學原理構建標準框架,解釋了六大計算思維實踐:連接計算、開發計算工件、分析問題和工件、抽象、通信和協作與七大計算機科學思想:創造力、抽象、數據和信息、算法、編程、互聯網和全球影響[7]。安吉莉(Angeli)等在K-6中探討計算思維,認為計算思維是一個利用抽象、概括、分解、算法思維和調試(檢測和糾正錯誤)元素的思維過程[8]。也有學者考慮到計算思維解決問題的靈活適用性,在跨學科的背景下定義計算思維[9]。賈拉勒(Jalal)等在計算思維技能之外確定了21世紀技能相關的一般技能,通過實證研究將認知技能和態度、語言技能、創造性問題解決的技能和態度、合作技能和態度等擴充到計算思維三維框架之中[10],使計算思維的理論內核及延伸路向不斷清晰。

梳理歸納各界計算思維研究成果并非是期于得出計算思維具體確切的定義,但通過分析各研究主線及結論能夠發現其共同之處。因此,本研究從解決問題及培養技能兩層面來理解并提煉計算思維的內核本質及內生結構,站在問題解決視角理解與描述計算思維,并將其細化到問題解決的具體過程之中(如圖1所示);同時基于人與問題兩大主體,對計算思維問題解決之外的技能培養分類劃歸(如圖2所示);基于國內外相關研究,整理出問題解決與技能培養兩層結構框架中具體內容組成(如下頁表1所示),以期深刻理解計算思維本質進而有效開展教學實踐活動。

通過分析發現,計算思維的問題解決過程主要包括抽象、數據結構、算法、循環與迭代、最優化、測試、歸納與遷移:操作者提煉問題本質,忽略不必要的細節,將復雜的問題情境加以抽象[11-13],依據關鍵變量將感性認識組織為計算可解的問題[14];而要深刻理解和解決問題,需要充分體現收集、表示和分析數據的過程[15];鄧肯(Duncan)等在設計小學生計算思維課程時,將算法、編程、數據表示、數字化設備、數字化應用及人與計算機的關系作為思考課程內容的基礎[16]。其中,數據表示即二進制編碼不同種的數據類型,算法即問題解決的程序化規劃。將問題轉化為可解決的問題的重點在于在問題中提取有效數據并進行模型建構(數據結構),研究數據的處理方法與操作步驟(算法)并獲取指令;算法思維作為解決問題的關鍵,是計算思維的核心組成結構,即用推理思維來獲取問題解決方案[17],可以用來解決學科交叉領域的問題[18],也是開發和表達計算問題解決方案的工具[19]。通過一系列算法所得出的是解決問題的眾多指令,通過對指令的分析、重復利用及自身調用(循環與迭代)等以形成完整的問題解決方案,并對比不同的方案(最優化),確定最終解決方案,將問題轉化為方便解決的問題;無論是國際教育技術協會和計算機科學教師協會等提出的計算思維操作性定義的特征,還是伯南與雷斯尼克構建的計算思維三維框架,其中都強調了循環迭代及最優化解決方案的思想。方案的實施需落實在具體的操作步驟之中,思維的結果需反射在現實的行動之中。借助技術設備(測試)、人(歸納與遷移)或技術與人結合的方式得到問題解決結果。一些學者將測試定義為調試及錯誤檢測,即發現方案中的錯誤并進行修正[20-22]。將問題解決方案泛化并用于解決其他相關問題這一技能,被廣泛認為是計算思維的一部分[23][24]。在培養技能方面,各項研究結論主要涉及到處理復雜性的信心,處理困難問題的穩定性,對不確定性的容忍,以及處理開放式問題的能力,與他人溝通和合作以克服共同解決方案的能力等,以及培養批判性思維[25-27]、創造力及發散思維[28]。我們基于主體維度從三個角度將其歸類劃分,分別是操作者自身方面(自我認知及反思)、操作者與問題方面(解決問題的態度、創造力及發散思維)以及操作者與其他操作者方面(溝通、協作、接納與批判)。

二、計算思維培養的四個階段

計算思維培養階段層次的劃分能夠助力計算思維教學實踐的落地。思維的養成是知識不斷獲取的過程,也是學習者認知發展變化的過程,皮亞杰提出的認知發展理論很好地解釋了兒童認知的形成與發展過程,成為此后兒童發展相關研究的理論支撐及發展基礎。皮亞杰作為心理學家以及兒童認知發展專家,其理論被諸多研究者以不同角度及層面加以延用發展。計算思維同樣作為一種高階思維能力,其發展與培養也需要循序漸進的過程與豐富多樣的形式。在此,我們同樣嘗試借助皮亞杰的認知發展階段理論構筑計算思維培養與形成的階段藍圖,但有所不同的是,我們并非要精確借鑒認知發展階段論中對兒童思維發展的年齡劃分,而是希望通過每階段所表現出的思維發展特點和發展連貫性等反映計算思維習得過程,借助認知發展階段的思維邏輯設定來劃分計算思維的培養階段框架,為計算思維教學實踐提供發展依附與理論支持。

(一)前計算思維階段——實體感知與行為互動中的計算思維蓄力

國外有研究提出要將計算思維轉變為四種基本技能之一就必須使計算思維在小學階段就出現,然后一直持續到中學,甚至更長時間內[29]。一提到計算思維,人們很自然地就會將其與計算機編程相聯系,誠然,編程確實是培養計算思維的重要方式之一,但年齡層次較低的兒童在編程認知接受和實際操作過程中會存在著一定的困難,探求低齡兒童計算思維培養的規律和方式需要更加豐富的教學形式支持。皮亞杰在感知運動階段中對兒童心理認知和行為發展的觀察描述給我們以啟示。兒童通過感官與運動體驗世界以獲取知識。通過看、聽、吸吮、抓取等動作建立與外界的聯系,在互動中逐漸形成對世界的認識,這是思維養成在兒童大腦中萌芽的起點。兒童產生了有目的采取行動以獲得相應結果的意識,這為兒童預想方案以實現簡單的目標奠定思維基礎。在感知運動的后期階段,兒童開始識別代表物體或事件的符號,并使用簡單的語言來編目對象,此階段兒童開始思考自身與客體、客體與客體之間的關系[30],自我認知逐漸形成。同時,兒童產生了實用智能,即設想目標并通過計劃一系列的活動實現目標[31],我們可以將其視為兒童早期解決問題的思維雛形。兒童的強模仿力驅動兒童進行重復性的活動,為兒童對循環的理解奠定思想根基。在此階段,他們并不是沒有進行思考,而是其認知系統僅限于出生時的運動反射,但正是在這些反射的基礎上發展出更復雜的程序[32]。與其說這一階段的兒童逐漸養成自我的思維,不如說在養成構建思維的基礎,培養一種潛在的計算思維意識,在大腦中埋下計算思維的“種子”,我們將這一階段定義為前計算思維階段。正如皮亞杰所說,在感知運動性智力或感知運動性活動的第一水平上獲得的東西,并不是一開始就能在思維水平上得到適當的表現的[33]。前計算思維階段的兒童,其認知能力可以在兒童與實體的感知與互動中得以啟發。關鍵的成熟事件使基本的認知過程就位,然后允許抽象思維、計劃和認知靈活性的發展[34]。皮亞杰認為感覺運動行為構成了所有認知架構的基礎,兒童在此基礎上構建對物體本身的新認知及處理物體的新方法[35]。在前計算思維階段,兒童大腦區域之間的交流逐漸增多,兒童在整合運動、感覺和信息認知方面的能力逐漸增強[36],為更高階思維能力的產生與發展奠定了基礎。

(二)計算思維準備階段——符號象征與任務驅動中的計算思維

具有一定象征意義的項目任務能夠提供活動框架和環境支撐,推動兒童在一定的游戲情境或實踐過程中培養計算思維。在前運算階段,兒童開始理解符號的意義并學習使用符號,語言技能及視覺能力的發展利于其用文字和圖片表現物體,能夠使用合適的語法及句式表示概念,認知符號及表述事實使得兒童的抽象思維技能得以鍛煉并發展。前運算階段兒童認知的主要特征之一為“象征性思維”,兒童開始象征性地思考,傾向于從事象征性游戲并操縱象征物。但此時兒童在理解復雜的抽象思維方面仍有困難,缺乏分類及系列化,無法很好地提煉不同概念中的共同特征或解決同一問題的不同方案。我們將這一階段稱為計算思維準備階段。計算思維準備階段的兒童在具有設定任務的游戲中調動自身的好奇心、激發探索問題解決方案的潛意識并以此提高自身的問題解決能力。兒童在以解決問題為主線、且具有一定的邏輯意義的游戲(如分配水果、送小動物回家、繪制有一定要求的圖形等)中形成自身認知事物的合理觀點及完成游戲的邏輯思維,而邏輯思維正是算法思維的早期形態,為兒童解決復雜問題提供前期練習及準備。計算思維準備階段的兒童在認知理解力及操作性動力方面有所增強,兒童的算法思維逐漸顯現但并不成熟。前運算階段的兒童比年幼的孩子更容易想象不存在的人或物體(例如有翅膀的蜥蜴),而且喜歡創造自己的游戲[37],兒童計算思維中的創造力成分在這一階段逐漸顯現并發揮作用。想象力正是創造力及發散思維的前身,利于兒童創造新的情境或行為,為兒童全面地看待問題、提出多角度的問題解決方案提供思維可能,進而推動邏輯思維的發展。任何一種思維的形成都需要經歷一個復雜的大腦認知、修正及成熟過程,而計算思維作為一種綜合化、融合化了眾多思維技能的高階思維,在不同的階段劃分中有不同的行為體現。前運算階段中兒童的認知特點啟示我們,這一階段兒童大腦發展的生理與認知基礎還不足以進行高階的思維操作活動,而兒童抽象思維的發展、簡單算法思維的形成、創造力與發散思維的迸發能夠使兒童在抽象的符號操作及簡單的項目任務中培養與展現計算思維。

(三)計算思維形成階段——邏輯推演與思維抽象中的計算思維生長

在計算思維準備階段思維特點的基礎之上,關注并推動兒童社會情感及技能方面的發展,情感技能作為一種更高級的思維方式,同樣也是計算思維發展的重要組成要素。在具體運算階段,兒童的認識獲得了較大的發展,兒童的思維延伸到了更廣闊的范圍空間中。皮亞杰認為兒童能夠理解復雜抽象的概念,并將概念附于具體的情境中加以分析,兒童的抽象性思維開始逐漸展現出其作用。同時,兒童開始接觸并理解學習規則的含義,產生了一定的自我約束及行為設定,兒童在思考問題的過程中,基于一定的規則條件學習如何更抽象與更假設地思考。具體運算階段的兒童具有了歸納邏輯,他們能夠從特定的方案中推理出一般的邏輯,并將一般化的問題解決方案遷移到具有共性的問題之中,從而幫助他們系統化地解決問題。同時兒童也具有了可逆性思考的能力,他們能夠理解一些物體被改變后仍可以恢復原狀,兒童將對物體的可逆性特征遷移到思維的可逆性上來,這也就說明,兒童能夠更為自由地設想、控制、整合解決問題的各個環節步驟,可逆性思維是兒童解決問題時所使用的非常重要的思維之一。相對于前運算階段,具體運算階段的兒童有了明顯的“去自我中心化”的特征,兒童協作交流能力進一步提升,兒童開始思考其他人如何看待問題,并能夠從他人的角度思考問題,兒童在接受他人觀點的同時,得以更深入地理解問題的本質。兒童也由只考慮問題表象逐漸轉化為關注一個問題的多個方面,這會幫助他們選擇合適的方案解決問題。但兒童不能考慮到邏輯上的所有結果,對問題解決方案中潛在的風險無法有效地捕捉。具體運算階段的兒童相對于前一階段的兒童在認知思維上產生了質的飛躍,其所形成的思維能力及情感技能基本構成計算思維的大部分組成結構,我們將這一階段稱為計算思維形成階段。在此階段,兒童的高階思維能力進一步發展,能夠對問題情境進行邏輯推演,創造力及發散思維在多樣化的任務中進一步釋放。兒童對同伴的渴求心理及所處教育環境為兒童進行交流協作提供了情感需求及客觀條件,兒童與他人的溝通協作技能得以培養,使得思維發展從封閉走向開放。

(四)計算思維發展階段——假設推理與形式運演中的計算思維延展

計算思維能力發展的指向是問題化地看待目標對象,具備忽視細節抽象問題的本質,在此過程中延伸到技術操作、學科知識等更為廣泛的情境領域。形式運算階段思維認知的大跨度發展與此階段計算思維的養成形成了呼應與交契。在形式運算階段,兒童能夠理解更抽象的術語,可以在不同情境中提出假設并進行有效的推理,能夠迅速地做出可行的策略與計劃,并考慮行動的可能結果。兒童的遷移能力有所提高,可以將一個情境中的學習理念用于另一個情境,能夠制定出多種潛在的解決方案,創造性地解決問題,并能夠結合計算機基本知識實現系統地調試。形式運算階段的兒童具有了元認知的意識,能夠合理思考自己的想法與他人的想法,批判性思維也在這一階段出現。在此階段,社會環境尤為重要[38],此時兒童所處的教育環境使得該年齡段的兒童對計算機知識的掌握由簡單了解變為較熟練使用,具備了對抽象復雜的算法程序原理消化處理的能力,兒童逐漸理解計算機的相關概念,對數據在計算機中的存儲形式也有所掌握。同時,兒童在對程序的認知過程中也對計算思維有了直接的認識,我們將這一階段稱為計算思維發展階段。相較于上一階段,計算思維的發展具有兩個方面的明顯特征,一是兒童的計算思維在兒童思維認知結構中更加穩定,計算思維的結構中囊括了對數據的分析能力、對解決方案潛在問題的分析及修補錯誤的能力、批判性思維以及兒童自身解決問題的態度、信心等情感方面的技能。計算思維的結構更為完善,并在更多的實踐問題中得到發展。二是兒童開始將計算思維運用到更復雜與更廣闊的實際問題之中,從解決特定的、設想性的預設任務向解決不確定的、實際的復雜任務過渡,計算思維發揮其真正的社會性意義上的作用,致力于解決社會生活的實際問題,從而形成一種計算思維大環境意識。同時,計算思維作為兒童思維結構中不可缺少的部分,對兒童的認知發展具有指導性的意義,助力兒童完成更高層面的自我思想升華,在兒童成年之后,由于兒童心智、認知等各方面的成熟,計算思維的發展具有專業性與針對性,對于未來從事計算機行業的人員,計算思維將深度發展;而對于其他行業的人員,計算思維則更傾向于廣度發展。

三、計算思維教授策略的探討

對計算思維培養階段的劃分能夠為計算思維的教授提供載體和依托,但計算思維教學目標的實踐落地更需要教授策略的支撐。計算思維自提出至今已不僅僅是派珀特強調的兒童在與Logo程序語言互動中的計算形式的思維,更多的重點則偏向了“思維”部分,其作為一種高階思維能力而存在于人們生活學習的問題解決和操作實踐中。計算思維的定義內涵、教學評價以及教授方式是當前研究的集中方向。國內外已有研究從不同角度采用多樣化的方式探究了計算思維的教學策略,除熟知的圖形化編程形式外、實體編程,不插電活動(Computer Science Unplugged)、紙筆編程(Paper-and-pencil Programming Strategy,簡稱PPS)等也是主要的教學形式,它們也是適應計算思維培養需求和兒童思維發展特點的存在。各研究雖自成一派、各有特色,體現并適用與計算思維培養的不同層面與需求,但并未形成系統連貫的教學和學習體系。因此,本研究將已有成熟的計算思維教學策略與案例整理劃歸于計算思維教學階段之中,一方面可以為教學工作者提供豐富多樣的策略選擇,另一方面也是計算思維教學系統化和規范化開展的嘗試,以期能夠為一線教師教學展開提供指導性的借鑒。

(一)實物感知與實體操作浸潤前計算思維階段

利用真實世界的實物,鼓勵兒童多看、多聽、多說、多觸摸,充分調動兒童的感覺器官幫助兒童樹立對世界存在及自我存在的客觀認知。這一階段的兒童模仿力很強,通過重復性的簡單語言及動作培養兒童計算思維能力的發展。庫尼亞(Cunha)等認為在低齡兒童階段進行編程活動與計算思維的教學相對而言成本投入更低同時教學效果更為持久[39]。通過實物體現具備特定外觀的實體符號更加符合此階段兒童思維發展的特點。通過移動、排列、組合等一系列實體操作培養兒童的動手能力,同時豐富兒童的思維環境,積木堆積、操控有聲實物等行為能夠極大激發這一階段兒童的動手興趣。實物感知與實體操作通過一種要求兒童操作具有象征意義的物理對象的方式,幫助他們產生對簡單符號的認知及思考,從而向復雜的符號思維能力過渡[40]。寓教于樂的教育思想及游戲化形式無疑滿足了前計算思維階段兒童對未知世界極強的探索欲以及其較為初級的認知水平的發展需求。

美國塔夫茨大學(Tufts University)艾略特·皮爾森兒童研究和人類發展學部的技術發展研究小組(DevTech Research Group)在探究有形實物編程(Tangible Programmlng)與機器人技術對低齡兒童影響的研究方面獨樹一幟。在一項名為TangibleKRobotics Program的項目中,主要研究學齡前幼兒如何以與其生理發育適當的實踐方式積極參與到編程和機器人技術活動中,并由此培養計算思維和排序能力等[41][42]。課程以發展兒童學習過程中的“強大的想法(Powerful Idea)”展開,包括工程設計、機器人技術、順序與指令流程和參數與傳感器流程等四個模塊。課程的展開多輔之以幼兒熟悉的學習與生活環境主題,除在其中體現程序機械等原理外,又與其他學科內容相聯系滲透,實踐材料主要為樂高組塊、機器組件或裝有傳感芯片的程序塊等。項目課程共計劃20個小時的課堂時間,包括10小時的活動開展時間以及10個小時的最終項目制作時間,總計教學時長不變,課程分散在接下來的幾個月當中,沒有根據學校實際情況展開2-3小時的教學活動,執行教師合理安排各部分教學時長。每次主題都遵循相同的基本架構:(1)游戲引入,計算概念強化;(2)活動挑戰,強化主題;(3)單獨或協作探索;(4)交流研討,共享策略;(5)自由探索,拓展延伸;(6)項目評估。研究結論表明,低齡兒童能夠通過實物操作方式參與編程活動,并從中培養和發展計算思維能力[43]。工程設計流程主題中一課的教學案例如表2所示。

(二)邏輯任務與人機交互貫穿計算思維準備階段

計算思維準備階段的兒童主要在小學低年級,其認知逐漸發展成熟,具備了一定邏輯判斷與思維操作能力。在此階段可以通過一些小的邏輯任務幫助兒童在一定情境框架之下發展計算思維能力。不插電活動對培養兒童計算思維能力具有獨特優勢。不插電的計算機科學最初是由西班牙學者蒂姆·貝爾(Tim Bell)設計的不使用計算機設備而是通過任務型游戲、魔術等活動形式來使兒童學習計算機科學概念,培養邏輯思維能力的教學方式[44]。 “不插電”活動不僅對于教育信息化覆蓋率低的計算科學教學活動有著重要的輔助作用,并且也是訓練兒童計算思維能力的重要方式。 “不插電”活動隨著教學需求也在不斷地優化與豐富,每年都會有在其社區網站上進行教學案例的更新。當前, “不插電”活動不再單純地傳達的是計算機相關概念知識,也更加貼合兒童學習情境及學科內容主題等。巴西與西班牙的研究者們曾合作探究了“不插電”活動對于小學生計算思維能力發展的影響。研究者在實驗干預前后都進行了計算思維能力的測試,實驗原定周期五周,每周一節課,每節課一小時,后應學校要求每周再增加一些課程。研究結果表明,干預后實驗組學生的計算思維技能顯著提高,而對照組則沒有,并且通過定性觀察與訪談發現,在不同題目類別上,學生的學習體驗和態度也存在差異[45]。同時,教師在進行“不插電”活動的主題教學時也應當注意,找到知識內容與計算思維概念的內在銜接點,不是所有的教學內容都適合于此方式,不應刻意為之。教學案例設計的節選如表3所示。

㈢圖形化編程與計算參與助力計算思維形成階段

計算思維形成階段的兒童在抽象理解與思維轉化方面的能力得到進一步發展,可視化編程軟件的使用是培養的主流形式。相對于Java、C語言等專業復雜的傳統編程工具,圖形化的編程環境(如Scratch、Alice、Greenfoot等)更符合兒童此階段的發展特點,同時也是目前國內外研究的熱點方向。在計算思維形成階段,這一載體將依附于計算機而存在。如Scratch為兒童提供了更具形象化的編程方式,通過拖動操作塊、排列操作塊完成對運動過程的設計。Scratch本身所具有的形式與操作特點,如互相嵌合、功能多樣的程序塊,腳本運行的邏輯關系等就與計算思維的基本概念與實踐內容相吻合,因此基于Scratch展開的計算思維教學活動、項目評估等研究也不勝枚舉。英國西蘇格蘭大學的研究探究了在Scratch中運用游戲能夠提高兒童編程參與度與計算思維能力。教學活動分四個階段進行:(1)任務目標;(2)合作探討;(3)指導實踐;(4)評價拓展。在具體的教學主體情境中,研究者在基于迷宮游戲原理重新設計游戲規則,學生需設計幫助小精靈穿過炸彈到達終點。炸彈分為兩種,分別是小精靈觸碰后會死亡的紅炸彈以及對小精靈沒有影響的黑炸彈。玩家通過控制W、A、S、D鍵操控小精靈的移動路線。學生需設計游戲人物(小精靈)及道具(炸彈、終點旗幟)等元素,并對觸發鍵進行程序設計,以賦予其功能。在過程中,學生之間進行討論交流,并在設計結束后進行作品展示,完成師生評價并加以優化改進。學生的邏輯思維以及問題分析能力得以加強,交流與協作在培養學生溝通能力的同時,注重批判性思維的運用,學生通過不斷測試及修正以完成程序的設計。教學流程圖如圖3所示。

(四)學科領域延伸與深度邏輯推理滲透計算思維發展階段

計算思維作為一種廣泛性思維,其應用范圍絕不局限于計算機編程技術,計算思維發展階段的主要任務是將學習者的計算思維進一步鞏固并發展,以將其用于生活實踐之中,真正發揮計算思維解決實踐問題之用。將計算思維融入學科教學中是一種更有成效的手段。計算思維的跨學科研究有助于各領域的創新和發現,或許會成為未來教育領域不可或缺的一部分[46]。計算思維作為一種思維方式其與學科教學的融合需要厘清以下幾點問題:(1)計算思維與專業學科知識之間的聯系;(2)教學范式的選擇,是以計算機編程環境為依托還是其他類型為活動形式;(3)主題內容的選擇,即學科中哪部分內容與計算思維結合更能容易教授和學習;(4)系統教學過程的確立等。美國范德比爾特大學(VanderbiltUniversity)的研究者們探討了計算思維與K-12科學教育相結合的教學策略。計算思維所包括的計算概念與實踐,如:問題表示、抽象、分解、模擬、驗證和預測等也是發展科學和數學學科專業知識的核心。研究者首先探討了科學探究與計算思維內容的相關之處;并選擇了一種可視化的編程環境作為操作平臺,使得學習者能夠設計目標對象的活動;并且選擇了生物與物理學的相關知識內容,如學生對于生物學基本概念與行為有著直觀的理解,但涉及到動態過程(例如物種之間的相互依賴性和種群動態)就較難理解了,而這正體現了計算建模方式的重要性。

通過讓學生參與軟件設計活動,將行動和反思交織在一起。學生首先要對假定的現象有一個初步的抽象理解,然后在可視化編程平臺中設計一個涉及到這個現象的實體和過程的模型;然后,學生通過將他們的模型與現象的“專家”模型進行比較,迭代地模擬和提煉模型的行為,從而發展解釋和論點以加深他們的理解;最后,學生將開發的模型和學到的科學概念應用到新的解決問題的情境中,使得該模型在構建、執行、分析、反思和細化的循環中無縫進步[47]。該研究為計算思維與學科內容整合提供了可借鑒的嘗試。教學模式與流程圖如圖4所示。

高度邏輯化的問題解決任務對計算思維能力的培養與教授更具針對性。黃蔚等學者通過任務活動搭建思維圖示的“腳手架”以提升學習者的批判性思維能力[48]。邏輯任務需要學習者獨立構建情境,抽象問題本質,建立問題解決模型,以此將問題分解、調試直至解決,使學習者更了解問題本質,并深刻體會問題解決的過程。濟州國立大學的金鐘勛博士等人提出使用紙筆編程策略教授學習者計算思維以提高他們的邏輯思維能力,這種方式倡導用紙和鉛筆繪制或書寫插圖、圖表、句子、代碼、符號、流程圖、表格或任何其他有意義的符號表示他們的問題解決過程,與Logo教學相比,紙筆編程的邏輯思維測試結果具有更高水平[49]。研究者將其基本教學流程劃分為五步:(1)分析問題,教師出示基本情境問題,如自動販賣機的工作流程;(2)設計解決方案;(3)建構方案,學習者運用數字、符號、代碼等通過手繪表格、流程圖表示問題解決的基本過程;(4)操作實施,通過基本的邏輯流程解決問題;(5)算法調試,不斷修正完善已有的方案步驟。實驗參與者的紙筆編程如圖5所示。

四、結語

計算思維教育實踐與教授策略的探究是印證計算思維可行、可教、可用的關鍵之舉。本研究通過對國外計算思維教學的主要方式的梳理,將已有成熟的教學形式與案例劃歸于計算思維培養階段之中,嘗試探索計算思維教授的連貫體系。本研究一方面提供了計算思維教授策略的豐富形式,另一方面對探究計算思維階段性與連貫性教學策略進行了深入討論。當然,各個階段的教學案例并不能完全代表該種教學方式的全部特征,只是依據其自身形式以及面向計算思維培養的側重點進行的分類劃歸,從而逐步實現計算思維真正的教學實踐落地。

參考文獻

[1] Papert,S.Mindstorms:Children,computers,and powerful ideas[M].NewYork:Basic Books,1980.

[2][17] Wing,J.M.Computational thinking[J].Communications of theACM,2006,49(3):33-35.

[3] Wing,J.M.Computational thinking and thinking about computing[J].Philosophical Transactions of the Royal Society A:Mathematical,Physicaland Engineering Sciences,2008,366(1881):3717-3725.

[4] Wing,J.M.Computational Thinking:What and Why?[DB/OL].http://www.cs.cmu.edu/~CompThink/resources/TheLinkWing.pdf,2010-11-17.

[5][23] CSTA and ISTE.Operational Definition of Computational Thinkingfor K-12 Education[EB/OL].https://id.iste.org/docs/ct-documents/computational-thinking-operational-definition-flyer.pdf,2019-09-02.

[6] Brennan,K.Resnick,M.New frameworks for studying and assessing thedevelopment of computational thinking[A].Proceeding of the AnnualMeeting of the American Educational Research Association[C].Vancouver:AERA,2012.39-48.

[7][11] Astrachan,O,Briggs,A.The CS principles project[J].AcmInroads,2012,3 (2):3 8-42.

[8][13] Angeli,C,Voogt,J,Fluck,A,et al.A K-6 Computational ThinkingCurriculum Framework:lmplications for Teacher Knowledge[J].Educational Technology&Society,2016,19(3):47-57.

[9] Zhang,L,Nouri,J.A systematic review oflearning computational thinkingthrough Scratch in K-9[J].Computers in Education,2019,141(1):1-25.

[10] Nouri,J,Zhang,L,Mannila L,et al.Development of computationalthinking,digital competence and 21st century skills when learningprogramming in K-9[DB/OL].https://www.researchgate.net/publication/333642505,2019-06-13.

[12] Lye,S,Y,Koh,J,H,L.Review on teaching and learning of computationalthinking through programming:What is next for K-12?[J].Computers inHuman Behavior,2014,41(1):51-61.

[15] Filiz,K,Yasemin,G,Volkan,K.A Framework for ComputationalThinking Based on a Systematic Research Review[J].ModernComputing,2016,4(3):583-596.

[16] Duncan,C,Bell,T.A Pilot Computer Science and Programming Coursefor Primary School Students[A].Proceeding of the Workshop in Primaryand Secondary Computing Education[C].London:ACM,2015.39-48.

[18] Barr,V,Stephenson,C.Bringing computational thinking to K-12:Whatis involved and what is the role of the computer science educationcommunity?[J].Acm Inroads,2011,2(1):48-54.

[19][24] Grover,S,Pea,R.Computational thinking in K-12 a review of thestate of the field[J].Educational Researcher,2013,42(1):38-43.

[20] Matthew,B,Lee V,R.Collaborative Strategic Board Games as a Site forDistributed Computational Thinking[J].International Journal of Game-Based Learning,2011,1(2):65-81.

[21] Yadav A,Mayfield C,Zhou N,et al.Computational Thinking inElementary and Secondary Teacher Education[J].ACM Transactionson Computing Education,2014,14(1):1-16.

[22] Atmatzidou,S,Demetriadis,S.Advancing students' computational thinking skills through educational robotics:A study on ageand gender relevant differences[J].Robotics and AutonomousSystems,2016,10(75):661-670.

[25] Ater-Kranov,A,Bryant,R,Orr,G,et al.Developing a communitydefinition and teaching modules for computational thinking:accomplishments and challenges[A].Proceeding of the 2010ACM conference on Information technology education[C].Midland:ACM,2010.143-148.

[26] Caspersen,M,E,Nowack P.Computational thinking and practice:Ageneric approach to computing in Danish high schools[A].Proceedingof the Fifteenth Australasian Computing Education Conference[C].Adelaide:Australian Computer Society,lnc,2013.137-143.

[27] Shailaja,J,Sridaran,R.Computational Thinking the IntellectualThinking for the 21st century[J].International Journal of AdvancedNetworking Applications,2015,20(9):39-46.

[28] Vieira,C,Magana,A,J.Using backwards design process for the designand implementation of computer science(CS)principles:A case studyof a colombian elementary and secondary teacher developmentprogram[A].Proceeding of the Frontiers in Education Conference[C].Oklahoma:IEEE,2013.879-885.

[29] Qualls,J,A,Sherrell,L,B.Why computational thinking should beintegrated into the curriculum[J].Journal of Computing Sciences inColleges,2010,25(5):66-71.

[30] Thomas,R,M.Comparing theories of child development[M].PacificGrove,CA:Brooks/Cole Publishing Company,1996.

[31] Piaget,J,Cook,M.The Construction of Reality in the Child[M].NewYork:Basic Books71954.

[32] Carey,S,Zaitchik,D,Bascandziev I.Theories of development:ln dialogwith Jean Piaget[J].Developmental Review,2015,38(1):36-54.

[33][35] Piaget,J.The origins of intelligence in children[M].NewYork:lnternational Universities Press,1952.

[34] Harvey,S,Levin,Kathleen,A.Developmental changes in performanceon tests of purported frontal lobe functioning[J].Developmental Neuropsychology,1991,7(3):377-395.

[36] Lefmann,T,Combs-Orme,T.Early Brain Development for SocialWork Practice:lntegrating Neuroscience with Piaget's Theory ofCognitive Development[J].Journal of Human Behavior in the SocialEnvironment,2013,23 (5):640-647.

[37] Ribaupierre,A,D.Piaget's Theory of Child Development[J].IntemationalEncyclopedia of the Social&Behavioral Sciences,2001,4(4):11434-11437.

[38] Dipietro,J,A.Baby and The Brain:Advances in Child Development[J].Annual Review ofPublic Health,2000,21(1):455-471.

[39] Cunha,F,Heckman,J.The technology of skill formation[J].TheAmerican Economic Review,2007,97(2):31-47.

[40] Lu,J,J,Fletcher,G,H,L.Thinking about computational thinking[A].Proceeding of the 40th ACM technical symposium on Computerseience education[C].Chattanooga:ACM,2009.260-264.

[41] Bers,M,U.The TangibleK robotics program:Applied computationalthinking for young children[J].Early Childhood Research andPractice,2010,12(2):20.

[42] Kazakoff,E,Bers,M.Programming in a Robotics Context in theKindergarten ClassroomThe Impact on Sequencing Skills[J].Journal ofEducational Multimedia&Hypermedia,2012,21(3):371-391.

[43] Bers,M,U&Horn,M,S.Tangible programming in early chilc:lhood:Revisitingdevelopmental assumptions through new technologies[M].Boston:lnformation Age Publishing,2010.

[44] Tim,Bell,Ian,H.Witten,Mike,Fellows.Computer Science Unpluggedoff-line activities and games for all ages[DB/OL].http://jmvidal.cse.sc.edu/library/be1198a.pdf,1998-06-09.

[45] Brackmann,Robles,et al.Development of Computational ThinkingSkills through Unplugged Activities in Primary School[A].Proceedingof the 12th Workshop on Primary and Secondary ComputingEducation[C].Nijmegen:ACM,2017.65-72.

[46] Lockwood,J,Mooney A.Computational Thinking in Education:Wheredoes it Fit?A systematic literary review[J].International Journal ofComputer Science Education in Schools,2018,2(1):1-58.

[47] Sengupta,P,Kinnebrew,J,S,Satabdi B,et al.lntegrating computationalthinking with K-12 science education using agent-basedcomputation:A theoretical framework[J].Education and InformationTechnologies,2013,18(2):351-380.

[48]黃蔚,曹榕等.人工智能時代批判性思維能力的提升策略——思維圖示的應用對小學生批判性思維能力提升的實證研究[J].中國電化教育,2019,(10):102-108.

[49] Kim,B,KimTKim,J.Paper-and-Pencil Programming Strategy towardComputational Thinking for Non-Majors:Design Your Solution[J].Journal of Educational Computlng Research,2013,49(4):437-459.

作者簡介:

孫立會:副教授,博士,博士生導師,研究方向為兒童編程教育、中日教育比較(sunlh777@163.com)。

王曉倩:在讀碩士,研究方向為兒童編程教育(wangxqss11@163.com).*本文系全國教育科學“十三五”2019年國家青年課題“非計算機化與計算機化兒童編程教育的理論與實踐研究”(課題編號:CCA190261)階段性研究成果。

猜你喜歡
皮亞杰認知發展計算思維
走近皮亞杰
眾人拾柴火焰高
道德教育中須處理好的三對關系
兒童道德發展規律探析——基于皮亞杰與科爾伯格的認知主義視野
程序設計課程中計算思維和應用能力培養問題研究
民族高校C語言程序設計課程教學改革的研究
算法的案例教學探析
淺談藝術專業學生計算思維能力的培養
皮亞杰認知發展理論在中學地理教學中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合