馬紀紅
目前,很多關(guān)于Scratch的研究都將其定位于兒童編程入門語言,認為它能夠讓學(xué)生快樂地編程。我認為,Scratch不僅是編程語言,還是創(chuàng)作工具,是表達工具。它能幫助學(xué)生進行有效的信息化表達和數(shù)字化創(chuàng)作,提升學(xué)生從語言到思維、從個人解決問題到團隊合作等多方面的能力。Scratch項目負責(zé)人凱倫·布雷迪博士曾說:“我們的目的不是要創(chuàng)建電腦程序編寫大軍,而是幫助電腦使用者表達自己?!?/p>
游戲設(shè)計是學(xué)生在Scratch學(xué)習(xí)中比較感興趣的一個內(nèi)容,如《小貓捉魚》《F1賽車》《走迷宮》《打地鼠》等等,在游戲設(shè)計過程中要涉及到:游戲規(guī)則、美工、編程、劇本、角色、場景等等一些元素,這些都是一個游戲在設(shè)計時所需要綜合考慮的。因此在進行一個完整的游戲設(shè)計過程中,學(xué)生的表達能力、合作能力、思維能力、動手能力、創(chuàng)造能力、溝通能力、解決問題的能力等都得到了一定程度的提高。
1、學(xué)生的語言表達能力得到強化
Scratch的主旨是“想法程序分享”。學(xué)生在用它進行創(chuàng)作的時候,首先要有一個“好創(chuàng)意”,就像導(dǎo)演需要一個“好劇本”一樣。信息技術(shù)教師都知道,描述一個程序是可以用自然語言的,在Scratch教學(xué)中,教師也可以有意識地引導(dǎo)學(xué)生用自然語言來描述他們的創(chuàng)意、想法。
如小學(xué)階段,可讓學(xué)生用自然語言來講述一個自編故事,如三只小豬、狐假虎威等,并將它們和Scratch的教學(xué)合二為一。從學(xué)生看動畫、講故事,到學(xué)生講故事、教師做動畫,再到學(xué)生講故事、學(xué)生做動畫……隨著教學(xué)的開展與深入,學(xué)生將不斷用語言描述著他們的設(shè)想與故事。慢慢地,詞匯量、遣詞造句的能力在逐步增強,從簡單的寥寥數(shù)語到完整敘述,從量變到質(zhì)變。學(xué)生們會驚喜地發(fā)現(xiàn),在敘述時加入一些連接詞和Scratch特有關(guān)鍵詞,能幫助他們更好地將故事和想法轉(zhuǎn)變?yōu)榭芍谱鞯摹皠”尽?,并有效增強語言敘述的邏輯性,增加語言和Scratch各部件之間的關(guān)聯(lián),實現(xiàn)與最終作品之間的耦合。當(dāng)學(xué)生完成從編劇到導(dǎo)演的轉(zhuǎn)變時,我們可以看到的是:故事的敘述脫口而出,而制作水到渠成。
讓學(xué)生用Scratch進行信息化表達前,先用自然語言來表達,這也回避了低齡學(xué)生繪制流程圖這樣一個難點,同時還能讓他們意識到“凡事預(yù)則立,不預(yù)則廢”,樹立想法優(yōu)先,先設(shè)計后制作的意識。
2、學(xué)生的動手操作能力得到提高
傳統(tǒng)的編程軟件需要學(xué)生記憶命令、輸入命令,如果命令拼寫錯誤,那程序就不能正確運行,對于小學(xué)生而言,這就像是一個坎,不僅影響了他們學(xué)習(xí)的積極性,而且還容易造成他們的畏懼心理,直接影響到他們動手操作。而Scratch中的命令無需記憶,從指令集中拖選出來即可,程序的代碼更容易閱讀,更容易理解,使得游戲設(shè)計變得較為簡單,因此學(xué)生也都樂于動手嘗試。
以前學(xué)習(xí)編程語言時教師督促學(xué)生動手實踐,現(xiàn)在Scratch課堂上學(xué)生積極主動地要求動手嘗試,因為他們把Scratch學(xué)習(xí)當(dāng)成是一個游戲,而動手嘗試的過程就是游戲中的攻關(guān)。在攻下一個個難關(guān)的時候,他們的動手實踐能力也得到了提高。
3、學(xué)生的學(xué)習(xí)主動性和興趣得到提升
在Scratch課堂上,學(xué)生獲得了創(chuàng)作數(shù)字化作品的機會和經(jīng)驗,他們通過挑選、處理、集成大量的信息資料,來自由表達他們的意圖。當(dāng)完成自己酷炫的作品時,他們將體驗到滿足感;當(dāng)相互欣賞作品、交換玩自制游戲時,又將獲得成就感。在這種目標的引導(dǎo)和激勵下,學(xué)生的興趣將得到巨大提升。
同時,在Scratch教學(xué)中,加減乘除、直角坐標、循環(huán)和變量、隨機函數(shù)、邏輯條件等都將成為最吸引人的元素。有了它們,就能夠讓動物們迅速奔跑,讓花兒慢慢開放,讓汽車、輪船、飛機都按照設(shè)想運動,所有的一切都可以在他們的作品中直觀呈現(xiàn)出來。在Scratch項目中,變量可以控制動畫速度、記錄游戲分數(shù),隨機數(shù)可以讓“大魚吃小魚”游戲中的小魚不斷重生。此時,學(xué)習(xí)這些知識變成了一種需要、一種渴求,學(xué)習(xí)的主動性還需要教師去調(diào)動、課堂的紀律還需要教師去管理嗎?學(xué)生有了高昂的興趣和主動性,課堂的高效是可以期待的。
4、學(xué)生的思維和解決能力得到鍛煉
Scratch用一種非常有意義的設(shè)計理念去支持問題的發(fā)現(xiàn)和解決。在學(xué)生用Scratch創(chuàng)作的時候,他需要有創(chuàng)意,進而設(shè)計原型系統(tǒng),然后試驗,看其是否可行,發(fā)現(xiàn)錯誤并及時修正,聽取別人的評價和意見,修改設(shè)計使其更完美。整個過程是一條不斷上升的螺旋線,即想到一個好主意,完成作品,而這個作品又激發(fā)了新的想法,按照新的想法再完善作品或者創(chuàng)作一個新作品……在這個不斷重復(fù)的過程中,無數(shù)的問題會自然生成,促使學(xué)生不斷地去解決問題。又因為Scratch被設(shè)計得非常容易修改,學(xué)生能夠動態(tài)地改變每塊代碼,并立即看到修改結(jié)果,因此能夠讓學(xué)生在不斷地生成、解決問題的交互試驗過程中獲得巨大的成就感。在多次的Scratch實踐課中我們看到,學(xué)生是在自覺地重復(fù)著這個過程,力求讓自己的作品更完美地表現(xiàn)最初的設(shè)計意圖。
從設(shè)計語言的敘述,舞臺的設(shè)計,角色的分配,到角色設(shè)置代碼,邏輯條件的創(chuàng)設(shè)、判斷與循環(huán)結(jié)構(gòu)的運用,直到最后反復(fù)的修改調(diào)試,這是Scratch游戲設(shè)計的一個完整過程,這個設(shè)計過程有助于鍛煉學(xué)生完整而有創(chuàng)意地表達自己的想法,幫助他們成為一個思維有條理、邏輯清晰的人。在Scratch中,學(xué)生搭建腳本,反復(fù)嘗試探究獲得自己想要的結(jié)果,這個過程使學(xué)生形成了科學(xué)發(fā)現(xiàn)的思維方式,而這個反復(fù)嘗試探究的過程也被學(xué)生當(dāng)成了一種有趣的游戲。
5、學(xué)生的創(chuàng)造能力變得無障礙
與傳統(tǒng)枯燥的編程不同,Scratch卡通化的圖形界面和搭積木式的編程序方式使得學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)積極性被極大地激發(fā),創(chuàng)作的欲望增強。使得他們能專注于想象與設(shè)計并輕松將其實現(xiàn),真正實現(xiàn)了“只有想不到,沒有做不到”。這種變化能在很大程度上縮小信息技術(shù)課堂上學(xué)生操作層面的差異性。而我們在Scratch教學(xué)中,將平時的“做中學(xué)”進一步發(fā)展成為“邊設(shè)計邊學(xué)習(xí)”,讓學(xué)生在設(shè)計和創(chuàng)造中學(xué)習(xí)。
在Scratch課堂上,學(xué)生可以自由地去想,同一個游戲,由于每個人的思維方式的不同、審美眼光的不同、挑選素材的不同,使得每個人的作品都是不一樣的,每個人的作品都有著學(xué)生自己的鮮明個性。