陳強華
【摘要】《江蘇省義務(wù)教育信息技術(shù)課程指導綱要(2017年修訂)》指出,計算思維是信息技術(shù)學科核心素養(yǎng)之一。小學生通過學習信息技術(shù)課程,掌握了信息技術(shù)的基礎(chǔ)知識,有相應的想象與創(chuàng)新能力,但對于編程教學中蘊含的算法思想、計算思維還需進一步培養(yǎng)。小學編程以Scratch教學為主,應該從單純以語法、算法為主的編程教學,向培養(yǎng)學生計算思維和解決問題的能力轉(zhuǎn)變,從而進一步提高學生的信息素養(yǎng)。
【關(guān)鍵詞】信息素養(yǎng) 計算思維 Scratch教學
2006年,卡內(nèi)基·梅隆大學的周以真教授對計算思維進行了解說:計算思維是運用計算機科學的基本概念,涵蓋計算機科學領(lǐng)域的一系列思維活動,包括問題解決、系統(tǒng)設(shè)計和人類行為理解。在Scratch教學中,不能只要求學生學會如何編寫程序,更重要的是讓他們系統(tǒng)化地分析,富有創(chuàng)造性地思考,從而有效地解決問題。
2013年,南安普頓大學的Cynthia Selby博士和John Woollard 博士提出,計算思維包含五個要素:抽象(Abstraction)、分解(Decomposition)、算法思維(Algorithmic Thinking)、評估(Evaluation) 、概括(Generalisation)。編程與計算思維不同,但編程教學是培養(yǎng)計算思維的關(guān)鍵手段。
一、抽象思維,建構(gòu)問題情境
在現(xiàn)實生活中,我們面臨的問題往往是混亂和復雜的,這要求我們從計算機可以處理的問題中抽象出這個問題。所以,教師要根據(jù)教學內(nèi)容與教學目標,基于真實的問題,有目的地建構(gòu)問題情境。
例如,在教學《穿越迷宮》一課時,通過情境模擬在有障礙的教室中進行穿越。
師:同學們玩過迷宮游戲嗎?今天我們把教室當成迷宮,請一名同學在10秒內(nèi)從教室前面穿越,繞過最后一個同學的座位,回到講臺位置。
隨后提出問題:(1)迷宮怎樣得來?(2)障礙物如何得來?(3)誰來穿越迷宮?
生:(1)通過背景繪制得來。注意迷宮通道的大小,并根據(jù)獨特的通道添加一些環(huán)路來混淆視線。(2)通過繪制或添加角色設(shè)置障礙。(3)注意穿越迷宮時角色的大小設(shè)定。
建構(gòu)問題情境是抽象思維重要的一環(huán),在激發(fā)學生學習興趣的同時,也可以引導學生感悟編程方法。
二、分解任務(wù),厘清編程思路
分解任務(wù)是把整個看起來比較復雜的問題進行合理的劃分,將一個總問題通過分解,進而引導學生一步一步去解決。經(jīng)過任務(wù)的分解,將難點、重點進行抽絲剝繭,厘清編程思路,從比較大的任務(wù)負荷中解脫出來,切實有效地解決問題。
例如:在教學《穿越迷宮》時,分解任務(wù)后發(fā)現(xiàn),角色控制和障礙判斷是編寫程序的重點。
1.角色控制
師:同學們都玩過游戲了,一般電腦游戲靠什么控制呢?
生:鼠標或者鍵盤控制。
師:Scratch可以使用鼠標移動來控制角色的移動,或者使用鍵盤的按鍵控制其移動。你覺得這里用什么控制比較方便呢?
生:讓角色跟隨鼠標移動。
師:如何用鼠標進行角色控制呢?
……
隨著討論的不斷深入,學生的思考也不斷成熟,問題也被層層分解,從而找到解決的途徑。
2.障礙判斷
如果角色在移動的過程中,碰到舞臺通道邊緣的黑線,使用條件判斷(如果……那么……)碰到黑色,從而通過具體坐標位置使其返回出發(fā)點;如果碰到設(shè)置在通道中的障礙物,則要使用條件判斷碰到角色,使其返回出發(fā)位置。
三、游戲互動,滲透算法思維
算法思維是將一些較為復雜的問題,抽象成具體的可執(zhí)行指令或規(guī)則,這樣就可以由計算機通過模塊化來解決問題。玩游戲一直是學生的天性,吸引他們的是游戲中人與計算機的互動。因此我們在教學時,要引導學生在編寫游戲時注重“可玩性”。通過不同的舞臺背景、角色設(shè)置、難易程度等模塊,以算法思維激發(fā)學生的想象力與創(chuàng)造力。
例如,在教學《穿越迷宮》時創(chuàng)設(shè)情境,能不能10秒內(nèi)穿越教室,這就是在編程時加入的計時器模塊。編寫時可設(shè)定在規(guī)定的時間內(nèi),成功穿越迷宮,將獲得驚喜,還可以設(shè)置不同的舞臺背景來設(shè)置不同的關(guān)卡,可以在迷宮中放置加分角色或減分角色,碰到加分角色可以使游戲難度低;碰到減分角色,則反之。也可設(shè)置不同的出入口,來實現(xiàn)多人競賽。
四、糾錯評估,不斷優(yōu)化程序
評估的作用是確保編程的最優(yōu)化。很多情況下一個算法不能完美地滿足所有的條件,這時候就要糾錯,進行綜合考量,不斷優(yōu)化程序。糾錯評估是編程的重要環(huán)節(jié),始終伴隨著學生的整個學習過程。當學生進行程序調(diào)試時,要引導他們能像計算機解決問題一樣去思考,并能理解執(zhí)行的每個環(huán)節(jié),與實際結(jié)果進行比對。在評估過程中發(fā)現(xiàn)結(jié)果與預想不一致時,就要進行糾錯,采用其他算法來實現(xiàn)。這樣反復糾錯評估,不僅能使學生在算法上有所突破,更能提升學生計算思維的能力。
1.讀懂腳本,主動糾錯
在信息技術(shù)教學時,往往把“讀”忽略掉了,其實在編程教學中,這是卓有成效的方法。在教學時,學生看到程序有問題,運行一直出錯,卻找不到頭緒。教師引導學生“讀”腳本,一邊讀一邊理解含義,這是一種主動糾錯行為。
例如,在教學《穿越迷宮》時,學生的條件語句(如果……那么……)已經(jīng)使用,可程序卻沒有去判斷,學生感覺到很無奈。這時將這個腳本進行展示,請大家一起來集體糾錯。先由這個學生去“讀”這個腳本,并說出每一步的含義,再由其他同學一起進行糾錯。發(fā)現(xiàn)問題原來是少了重復執(zhí)行命令,程序只能判斷一次,不能一直判斷。
2.有效合作,不斷優(yōu)化
合作學習,首先要明確解決的問題,是不是有合作的必要。對于那些簡單的、學生能獨立完成的任務(wù),就不太適合合作學習。唯有那些學生個人不能解決的、并能在很大程度上讓學生優(yōu)勢互補的問題,才是能使程序更優(yōu)化的有效合作,才是有意義的合作。其次,在合作學習中我們要注意明確分工,讓小組中的每個學生在一起工作時都要做一些事情,這樣每個人都有機會在優(yōu)化過程中表達自己,他們可以成為合作學習的小主人。第三,要適時引導。學生按小組進行合作學習時,不確定因素會增多,教師要參與其中,并通過指導、提示等形式,讓學生少走彎路,使程序調(diào)試最優(yōu)化,提高課堂效率。這樣不僅是小組合作的“優(yōu)化”,更能保證程序設(shè)計上的不斷“優(yōu)化”。
例如,在教學《穿越迷宮》障礙判斷時,布置小組合作學習時,首先明確小組分工任務(wù),一個學生負責觀察角色碰到障礙時的反應,一個學生負責記錄,所有組員都要討論、分析,為什么碰到障礙不能返回起點。找到原因后,進行修改,找到程序設(shè)計的最優(yōu)方法。
五、概括歸納,遷移解決方案
概括是在之前已經(jīng)解決的問題上,將其歸納為通用的解決方案,并將此遷移到更廣泛的問題情境中。有了前面步驟的積累,學生的計算思維慢慢“發(fā)芽”,如果要茁壯成長還需教師的引導,讓學生借助概括歸納,鞏固和強化學習成果,遷移問題的解決方案。
例如,在教學《穿越迷宮》時,在學生電腦桌面上發(fā)送了一個“挑戰(zhàn)一下”的文件夾,放入難度不一的三個半成品,請你自己選擇,看看你達到哪個級別。
“勝利大逃亡”——高手!
“大魚吃小魚”——高高手!
“通過今天的學習,能自主設(shè)計其他小游戲”——大師!
通過概括歸納從而進行遷移,學生可以根據(jù)自身實際情況接受更高一層的挑戰(zhàn)任務(wù),對所學知識進行深入的分析和靈活的運用,進行作品的創(chuàng)作。
南師大李藝教授在報告中說,計算思維是圍繞“人”進行的,是科學思想引起的,它關(guān)注的是描繪人的內(nèi)在品質(zhì)的概念,并把它們視為核心的主要部分。在Scratch教學中,編程的相關(guān)知識學生一般都能很好地掌握,在教學中要將重點從編程語法、規(guī)則轉(zhuǎn)移到培養(yǎng)學生計算思維能力上來,不斷融入計算思維的理念,讓“計算思維”的種子在 Scratch教學中“發(fā)芽”,從而“遍地開花” ,促進學生信息技術(shù)核心素養(yǎng)的養(yǎng)成。
【參考文獻】
[1]江蘇省中小學教學研究室.小學信息技術(shù)教師教學用書[M].南京:江蘇鳳凰科學技術(shù)出版社,2014.
[2]李峰,王吉慶.計算思維:信息技術(shù)課程的一種內(nèi)在價值[J].中國電化教育,2013(8).
[3]王榮良.計算思維對中小學信息技術(shù)課程的影響初探[J].中國教育技術(shù)裝備,2012(27).