鄒衛華
摘要:本文介紹了“圖形化編程”和“兒童信息學習的高階思維”基本內容與一般特點,重點論述了圖形化編程教學培養小學生高階思維的現實意義與可行性,并根據教學實踐提出了培養學生“高階思維”的具體策略。
關鍵詞:圖形化編程;小學生;高階思維
中圖分類號:G434? 文獻標識碼:A? 論文編號:1674-2117(2022)06-0000-03
● 圖形化編程教學的基本內容與一般特點
1.基本內容
圖形化編程一般指專為兒童學編程開發的積木式程序設計語言,它以形象直觀的積木指令幫助學生在創作中學習編程,表達自己的想法。教學目的是讓學生通過模塊的組合感受編程的過程,理解典型語句的含義,并能通過一定的腳本來表現自我設計的作品。
2.一般特點
①可視化。在圖形化編程中,構成程序的命令和參數通過積木形狀的模塊來實現。編輯好的程序代碼、用來選擇的功能控件、程序預覽和運行都可一覽無余。②游戲性。圖形化編程可以很容易地創造交互式故事情節,學生在編程的過程中自己選擇角色、舞臺背景,可以大大增加學生的學習興趣。③互動性。雖然制作中的程序只能在軟件環境下運行,但發布后的程序則一般都可在網頁內運行,孩子們能與愛好者們對作品進行交流。
● 高階思維的基本內容與一般特點
1.基本內容
高階思維是指發生在較高認知水平層次上的心智活動或認知能力,是以問題求解、決策、批判性思維和創新性思維為核心的思維能力。高階思維是高階能力的核心,主要指創新能力、問題求解能力、決策力和批判思維能力。
2.一般特點
①批判性。批判性思維主要是對相信什么和干什么做出判斷,這種判斷需要有分析和評價。而分析、評價是高階思維的組成要素。高階思維的分析和評價需要做到清楚、準確、相關、有深度,并具有嚴格的邏輯性。②求異性。高階思維是從新的思維角度去思考問題,以求得問題的解決。高階思維十分注重培養思維的求異性,逐漸形成具有多方位、多角度的思維方法與能力。③創造性。創造性主要包括發明和發現兩方面的表現,高階思維具有的創造性主要是指后者。高階思維能力中的一個重要能力就是創造的思維,它提倡人們能別出心裁地思考并做出判斷。
● 基于圖形化編程教學培養小學生高階思維的現實意義與可行性
1.現實意義
(1)加強思維的具象性。小學生擅長形象思維,其形象思維具有直觀性、整體性、靈活性等特點,圖形化編程可以起到激發學生靈感的作用。如果在小學信息技術教學中以可視化來學習程序編寫,則能讓小學生獲得更多豐富的表象,培養學生的聯想能力、想象能力、創新能力。
(2)加強思維的邏輯性。邏輯思維是人們在認識過程中借助概念、判斷、推理反映現實的過程。它是學習計算機編程重要的思維能力。從小學生的思維特點來看,他們正處在從具體形象思維向抽象邏輯思維過渡的階段,所以在小學階段培養學生初步的邏輯思維,對提升其信息素養具有重要的作用。
(3)加強思維的創造性。創新能力是中小學生能力中最重要、最寶貴、層次最高的一種綜合性能力,但目前的小學信息技術教育對學生的創造性思維培養非常有限,而在信息技術領域,計算機語言編程被公認是最具創造性的活動,可以鍛煉學生的邏輯思維、自學能力。
2.可行性分析
(1)圖形化編程的編程技術開發定位。圖形化編程開發定位對象是少兒,所以圖形化編程教學的目的不是培養程序員,而是通過教育活動,向學生滲透程序設計思想,促進學生高階思維的發展,為培養創新人才打好基礎。
(2)圖形化編程提供自然視角下的編程邏輯。在以往的程序編寫過程中,編寫者面對的是一些語句與數據,沒有實時的程序輸出結果,這對初步具有邏輯思維的小學生來說是難點。圖形化編程一般是由一些“角色”配上“舞臺”,讓角色在舞臺上移動,或與其他角色交互。這樣,小學生就能指揮“角色”玩“卡通游戲”,既將程序編寫具象化,直觀呈現自己的編程意圖與邏輯思考,又極富情趣。
● 基于圖形化編程教學培養學生高階思維的具體策略
1.以非線性智能程序培養多向思維
在教授學生圖形化程序編寫時,教師一般是從最簡單的線性程序編寫入手,如完成一個或多個任務,從任務開始至結束,都是一線貫之。這種程序簡單,執行時不容易出現錯誤,但長期執行這種編程思想即學生真正掌握智能化程序的編寫不利。
所謂“智能化”的程序,是指程序在未知環境下能相機、隨時地處理各種任務,這種任務處理往往是選擇性執行,或是并行性執行。這就使得處理任務的先后順序不是線性的,而是非線性的。學習編寫非線性的程序之前,教師應讓學生對程序處理任務時面臨的種種可能性進行預測評估,讓他們盡可能預測所有可能性,然后把想到的“可能”進行分類,把每類“可能”定義為一種任務,分別制訂最有效的策略來應對處理。在編寫處理的具體子程序時,在程序代碼上把每個任務子程序的啟動賦予觸發事件。在具體的編寫技巧上要善用各類“運動”和“控制”控件來創建子程序體,使程序高效簡潔,要善用“事件”“偵測”命令來分解任務,并聯子程序體,使程序靈活智能。
另外,在編寫高級的非線性程序時,離不開基于傳感器的行為編程設計。例如,某個具體任務子程序的觸發,可以用不同類別的傳感器返回的值來觸發不同類別的任務子程序,這樣就能實現程序探測和處理多目標的控制任務,模仿人類探索未知環境的過程。
總之,在任務分解及整體系統設計上,要善用非線性編寫法,善用基于傳感器的行為編程設計,以此來應對多任務的情況。這樣的程序編寫思想,有利于培養學生多向思維、全向思維。
2.以算法優化培養邏輯思維
任何語言程序的編寫與算法的優化都不只有一種,圖形化編程也不例外。在實際的學習過程中,小學生會發現截然相反的命令組合,卻可以實現相同的效果,如移動與翻轉,只要在給予的角度上做一些小變化,就能到達相同的坐標或位置。又如在“控制”中,通過“如果、否則”的不同表達,也能實現相同的結果。再如用數個命令模塊堆疊,卻可以用“重復執行多少數”來簡化……這些都可以讓學生在繁簡之間對比取舍,在取得優化與效率的過程中培養多向思維能力。在這樣的過程中,小學生會經歷以下三方面的思維訓練:
(1)規劃算法。面對圖形化編程中的角色移動、旋轉、翻轉、反彈等,小學生都有一個從動畫到語言的分析過程,如簡單移動還是復雜翻轉,學生需要思考移動多少步,旋轉多少度,面對多少度方向……尤其是翻轉,需要算出轉向的角度與“重復執行”的次數。這樣的算法初步練習,是一種從形象走向邏輯的過程,能讓小學生從具象分析中驗證自己的程序邏輯,進一步提升自己的計算機邏輯分析能力。
(2)聯系命令。圖形化編程積木式的控件非常簡單,學生在理解自然語言命令的基礎上能快速熟練地運用控件“堆疊”腳本。但隨著學習的深入,角色運動越來越復雜,命令的組合應用情況會增多,這將考驗學生對控件的靈活組合能力。理解控件間的聯系,特別是“偵測”“運算符”“數據”中嵌套使用變量等,能讓小學生在體驗程序多變的同時,提升計算思維能力。
(3)明確流程。圖形化編程是嚴肅的編程語言,有嚴密的結構。小學生雖然用控件編排,但也要編寫常量與變量,對整個流程進行分析,對自己的程序指令進行邏輯安排,只有這樣才能順利完成任務。這就需要小學生在編程時,明確流程。準確定義條件、變量范圍等,明白程序的分支作用,經歷這樣的過程,小學生的邏輯思維能力也得到。
3.以軟硬結合培養解決實際問題的創新思維
信息時代從某種意義上來說就是傳感器的時代。傳感器就像是程序的感覺系統,它能為程序獲取外界的各類數據信息。如今,開發的供程序使用的傳感器種類繁多,如光電傳感器、聲音傳感器、溫濕傳感器、觸動傳感器、紅外傳感器、角度傳感器等,每種傳感器上都配有模數轉換部件,以便將采集到的各種模擬量轉換成計算機能處理的數字量。
圖形化編程內置的程序控件能通過一些外部接口程序(如Arduino等)支持外部硬件及多種傳感器。通過各類傳感器,如聲音傳感器、光電傳感器等獲取外部真實數據,以此作為變量值,小學生就能編制出各種真實的生活類處置程序。這樣不但可以激發小學生的學習興趣,而且能在實際的生活任務中,培養小學生的問題解決能力及分析能力。
另外,圖形化編程擴展到真實生活類編程,需要小學生理解一些常見的物理特性,了解常用的傳感器,了解生活物理中的距離、角度和光亮、聲音、溫度等概念。而將這些數理知識融合到編程游戲中,能讓學生自然接受,使編程成為一種“生活玩具游戲”,在直觀運動中體現編程結果,讓學生在游戲中思考,在趣味中培養創造性思維。
在實際的教學過程中,筆者深深感受到,圖形可視化編程學習能讓小學生在愉快的環境中通過實驗(如設計互動故事)去學習簡單有趣的程序設計、數學和計算知識,而更有價值的是,能讓他們發展計算邏輯、創造性思維的能力。