劉曉靜 陳香麗 黃橋燕
摘要摘要:Scratch是一款兒童編程軟件,其積木化的操作具有簡單、可視等特點,有趣的界面可以制作動畫、游戲等,能充分調(diào)動學(xué)生學(xué)習(xí)興趣,開發(fā)學(xué)生創(chuàng)新思維,培養(yǎng)學(xué)生編程思想,同時培養(yǎng)學(xué)生對自然科學(xué)的自主探究精神。結(jié)合Scratch的特點,將其與其它編程軟件進(jìn)行對比,對Scratch應(yīng)用于中小學(xué)信息技術(shù)課程教學(xué)中的優(yōu)勢進(jìn)行了分析。
關(guān)鍵詞關(guān)鍵詞:Scratch;編程思想;創(chuàng)新思維;信息技術(shù)
DOIDOI:10.11907/rjdk.1431018
中圖分類號:G433
文獻(xiàn)標(biāo)識碼:A文章編號文章編號:16727800(2015)004015602
0引言
隨著社會信息化的發(fā)展,網(wǎng)絡(luò)、游戲、動畫、視頻短片和手機(jī)通信等逐漸滲透到人們社會生活的各個層面,形成了傳播力和影響力極強(qiáng)的數(shù)字文化。浸潤其中的兒童成為了數(shù)字文化的原住民,由此相伴而來的是兒童在數(shù)字文化生活中出現(xiàn)的新現(xiàn)象、新矛盾和新問題,引起了學(xué)校、家長和社會的憂慮[12],且信息技術(shù)帶來的利益并未在兒童中產(chǎn)生廣泛認(rèn)同。
開發(fā)Scratch程序語言的目的是幫助年輕人發(fā)展學(xué)習(xí)技能,提升創(chuàng)造性思維與合作能力。生動的界面、簡易的積木式編程,讓Scratch——兒童編程軟件進(jìn)入中小學(xué)課堂,使學(xué)生了解編程思想的同時充分發(fā)揮其創(chuàng)造性,還能培養(yǎng)他們團(tuán)隊合作精神、問題解決能力及信息處理能力。本文在對比分析Scratch優(yōu)勢的基礎(chǔ)上,通過案例探討Scratch在教學(xué)中的應(yīng)用。
1Scratch簡介
Scratch是一款由麻省理工學(xué)院(MIT) 媒體實驗室終身幼稚園小組(Lifelong Kindergarten Group)2007年研發(fā)出來的一種圖形化的面向兒童的簡易編程工具。針對8歲以上學(xué)生的認(rèn)知水平,及他們對界面的偏好,MIT作了深入研究和頗具針對性的設(shè)計開發(fā)[3],不僅易于學(xué)生使用,又能寓教于樂,讓學(xué)生獲得創(chuàng)作樂趣。
Scratch 的下載和使用完全免費(fèi),開發(fā)了Windows系統(tǒng)、ios系統(tǒng)等版本,支持多種語言。該開發(fā)組織除了保留對“SCRATCH”名稱和軟件LOGO的權(quán)利外,還公布源碼,允許任意修改、發(fā)布、傳播。目前已有不同的改進(jìn)版本在網(wǎng)上流通。
Scratch積木模塊共有8個大類,100多個功能,包括一個完整程序的每個環(huán)節(jié),甚至數(shù)組。在原版中沒有函數(shù)調(diào)用,也即復(fù)雜的功能要重復(fù)編寫相同的代碼。在自由軟件開發(fā)組織中有人進(jìn)一步開發(fā)了制作自定義積木(自己編函數(shù))的功能[4]。界面包括8個部分:
(1)程序區(qū)。Scratch將程序命令歸為動作、控制、外觀、偵測、聲音、數(shù)值與邏輯運(yùn)算、畫筆、變量8個部分,并用顏色來分類,當(dāng)點選其中任何部分,相關(guān)程序命令就會呈現(xiàn)在程序區(qū)中,然后按照自己的想法將命令拖動到腳本區(qū),即可像搭積木一樣輕松地組合出腳本。為了不讓編程的初學(xué)者遇到繁瑣的語法問題,語句塊被設(shè)計為只有當(dāng)語法正確時才能結(jié)合到一起。比如循環(huán)結(jié)構(gòu)被設(shè)計成“C”的形狀,提示使用者需將反復(fù)執(zhí)行的語句塊放到里面。在編程中只要用鼠標(biāo)雙擊任何語句塊或語句塊的組合,就可以立即看到執(zhí)行效果,便于調(diào)試。因此,用 Scratch 編程不用擔(dān)心語法錯誤,可以讓使用者在不知不覺中學(xué)習(xí)到編程概念。
(2)腳本區(qū)。在此區(qū)域?qū)⒚钸M(jìn)行組合,形成程序腳本。腳本區(qū)還可以切換為“造型”與“聲音”區(qū),當(dāng)點擊角色區(qū)的“舞臺”時,在“造型”選項會變?yōu)椤岸鄠€背景”,用來對角色的造型和聲音進(jìn)行檢查。照相按鈕和錄音按鈕分別可以用聊天用的視頻攝像頭拍照和聊天用的麥克風(fēng)錄音[5]。
(3)角色區(qū)。顯示舞臺上出現(xiàn)的所有角色,點擊角色,在腳本區(qū)即可出現(xiàn)該角色對應(yīng)的程序腳本。
(4)舞臺。它是角色表演的舞臺,是最終呈現(xiàn)給用戶的區(qū)域。在 Scratch 里,學(xué)生就是編劇、導(dǎo)演,眾多角色在學(xué)生的指揮和命令下進(jìn)行各種各樣的演出,可讓學(xué)生盡情去表達(dá)。
(5)工具按鈕。它是編輯角色區(qū)中角色的工具按鈕。
(6)控制按鈕:播放、停止程序腳本,更改舞臺顯示的界面。
(7)角色資料區(qū)。顯示當(dāng)前角色的坐標(biāo)位置、方向等信息。
(8)新增角色按鈕。不管是創(chuàng)作故事還是游戲,都先要有一個或幾個角色,這些角色都可以通過3個新建角色按鈕來創(chuàng)建。其中繪制新角色可以調(diào)用簡單易用的“繪圖編輯器”創(chuàng)建新角色,并且可以從舞臺中截取部分圖像作為角色。
Scratch具有可視化、適用于兒童學(xué)習(xí)數(shù)學(xué)、邏輯及設(shè)計流程清晰等優(yōu)點。積木組合式程序設(shè)計方法,可以用拖曳、組合的方法取代打字,免除了代碼輸入錯誤的困擾,還可以制作出具有故事情節(jié)的動畫或交互式游戲。
2Scratch與其它編程工具比較
目前,我國兒童編程相關(guān)研究還處于萌芽階段,甚至在圖書市場也很難找到相關(guān)書籍資料,只有網(wǎng)上的寥寥數(shù)語。當(dāng)前關(guān)于兒童編程最好的兩個編程平臺為KPL和Scratch。
微軟中國對KPL進(jìn)行了大量本土化工作,網(wǎng)上KPL的中文參考資料也較多。而MIT的Scratch本土化工作就相對比較落后,只有簡體中文版的界面翻譯,而參考資料和學(xué)習(xí)問答都是英文的,平均翻譯率僅為26%,Scratch的官方網(wǎng)站也只有英文的。在中國臺灣,繁體漢字的翻譯進(jìn)展尚可,參考資料和問答有50%的翻譯率。大陸以華南師范大學(xué)附屬小學(xué)信息技術(shù)研究人員對Scratch的研究為主,目前已設(shè)計了“Ledong Scratch 互動教學(xué)平臺”[6],其突出特點是開放性、 互動性、 直觀性和易操作性。
KPL和Scratch比較而言,KPL更專業(yè),動手編程對于兒童來說并不容易,不適合做入門語言;而Scratch更像一個藝術(shù)創(chuàng)作平臺,容易操作,即使不會英文也能創(chuàng)作出自己的作品,而且適合兒童愛玩的天性,讓學(xué)生在玩的過程中設(shè)計自己的游戲、卡通、動畫。雖然Scratch編程同專業(yè)的編程語言有一些區(qū)別,但它們的基本概念如坐標(biāo)、方向、邏輯運(yùn)算、條件、循環(huán)、事件等都大同小異。學(xué)好Scratch 對于學(xué)生以后學(xué)習(xí)專業(yè)級(企業(yè)級)語言(如 C++、Java、C#.net 等)非常有幫助。
3Scratch應(yīng)用于中小學(xué)信息技術(shù)課程教學(xué)中的優(yōu)勢
3.1簡易有趣,調(diào)動學(xué)生興趣
Scratch軟件給兒童提供了盡可能方便的工具:積木化的程序及大量的角色、舞臺、聲音等素材,讓他們充分發(fā)揮自己的想象力進(jìn)行創(chuàng)作。在創(chuàng)作過程中,其操作簡單、設(shè)計可視化,像壘積木一樣卻能創(chuàng)作出各種生動活潑的小游戲、動畫等,讓學(xué)生在玩中學(xué),學(xué)生學(xué)習(xí)積極性大大提高,想象力和創(chuàng)造力得到極大培養(yǎng)和鍛煉[7]。
3.2輕松幫助學(xué)生編程入門
對于中小學(xué)生,學(xué)習(xí)專業(yè)編程軟件尚有一定難度,他們的邏輯思維能力相對不強(qiáng),對程序思維的理解存在一定困難。Scratch將程序思想蘊(yùn)含于積木式的操作步驟中,包括邏輯運(yùn)算、條件、循環(huán)、事件等,圖形化地反映出程序思想,讓學(xué)生在完成作品的過程中體會編程,為以后深入學(xué)習(xí)編程打下基礎(chǔ)。
3.3培養(yǎng)學(xué)生信息處理與交流能力
通過建立Scratch項目,學(xué)生能夠?qū)W習(xí)選擇、創(chuàng)造、管理多種格式的媒體,包括文本、圖片、動畫以及視音頻資料。學(xué)生獲得了創(chuàng)作媒體的經(jīng)驗,通過分析周圍各種信息,提高了洞察力和甄別力。并且,Scratch的使用要求學(xué)生必須能夠挑選、處理、集成大量的信息資料,并高效表達(dá)出他們的創(chuàng)作意圖,是對學(xué)生表達(dá)能力的極大鍛煉。
3.4培養(yǎng)學(xué)生思考和解決問題的能力
學(xué)生在學(xué)習(xí)Scratch的過程中,能夠處于一種批判性思維和系統(tǒng)思考的狀態(tài)中,為了完成項目,學(xué)生必須注意協(xié)調(diào)和控制程序中各種造型的相互作用,程序的交互作用能夠幫助學(xué)生建立程序基本原理的直接體驗。
Scratch用一種非常有意義的設(shè)計理念去支持問題的發(fā)現(xiàn)和解決。創(chuàng)建一個Scratch項目首先要求有一個初步的設(shè)想,然后通過Scratch的模塊一步一步去實現(xiàn)。Scratch被設(shè)計得非常容易修改,學(xué)生能夠動態(tài)地改變每片代碼,然后立即看到結(jié)果。該過程能夠讓學(xué)生在不斷地提出、解決問題的交互試驗過程中收獲知識,發(fā)展能力。
Scratch 鼓勵創(chuàng)造性思維,要求學(xué)生不斷尋找新方法去處理各種預(yù)設(shè)難題,而不是僅僅教給他們?nèi)绾谓鉀Q既定問題。
3.5培養(yǎng)學(xué)生人際交往與協(xié)作能力
Scratch程序是搭積木方式,因而程序代碼更容易閱讀,也比其它程序更容易分享。可視化的對象和模塊代碼支持協(xié)作,確保學(xué)生能夠共同建設(shè)項目并交換代碼。學(xué)生提出創(chuàng)作構(gòu)想,然后一步一步地用程序?qū)崿F(xiàn),在實現(xiàn)某一個創(chuàng)作構(gòu)思的過程中,學(xué)生的自我創(chuàng)作意圖促使他們能夠應(yīng)對編程過程中的挑戰(zhàn)和困難。學(xué)生創(chuàng)建Scratch工作項目時,要在腦海中有一個虛擬使用人,需要考慮別人與他們的作品如何反應(yīng)和互動。Scratch非常容易修改,所以學(xué)生能夠根據(jù)其他人的意見及時修改他們的作品,從而增強(qiáng)了其責(zé)任心和適應(yīng)能力。并且,Scratch程序非常容易共享,學(xué)生可以在交互的環(huán)境中討論各種話題,比如互聯(lián)網(wǎng)上的Scratch社區(qū)。
4結(jié)語
信息時代,如何上好信息技術(shù)課,培養(yǎng)學(xué)生的信息技術(shù)能力至關(guān)重要。與傳統(tǒng)教學(xué)相比,將Scratch引入中小學(xué)課堂,解決了畫圖、Office軟件等簡單操作給中小學(xué)生帶來枯燥感等問題,充分調(diào)動了學(xué)生的學(xué)習(xí)積極性;不再只是教技術(shù),更重要的是用技術(shù)表達(dá)思想,激發(fā)學(xué)生的創(chuàng)新思維和探索精神;通過簡單操作,讓學(xué)生在玩的過程中體會編程思想,為今后學(xué)習(xí)更深入的編程語言打下基礎(chǔ);教學(xué)生利用軟件進(jìn)行各種媒體文件的處理等,培養(yǎng)了學(xué)生的信息處理和交流能力,在創(chuàng)作過程中還培養(yǎng)了學(xué)生獨(dú)立解決問題和交流合作的能力。由此可見,將Scratch引入中小學(xué)信息技術(shù)課堂能夠豐富學(xué)生的創(chuàng)作空間,提高學(xué)生學(xué)習(xí)興趣,發(fā)展學(xué)生各方面的能力。
參考文獻(xiàn)參考文獻(xiàn):
[1]曾燕波.虛擬世界中青少年的生存與發(fā)展[J].社會科學(xué),2007(9):8289.
[2]王繼華,吳向東.兒童數(shù)字文化創(chuàng)作課程的背景、觀念、設(shè)計和案例[J].中小學(xué)信息技術(shù)教育,2010(1):2123.
[3]朱麗斌,金炳堯.Scratch程序設(shè)計課教學(xué)實踐研究——基于體驗學(xué)習(xí)圈的視角[J].現(xiàn)代教育技術(shù),2013,7(23):3033.
[4]徐勇.Scratch課件制作全接觸[J].技術(shù)應(yīng)用,2013(1):7072.
[5]陳捷.Scratch語言簡介及應(yīng)用[J].計算機(jī)教學(xué)與教育信息化,2009,9(26):3940.
[6]吳俊杰,梁森山,項花.Ledong Scratch 互動教學(xué)平臺的應(yīng)用與研究[J].教學(xué)儀器與實驗,2011,5(27):912.
[7]凌秋虹.Scratch在小學(xué)信息技術(shù)課程中的應(yīng)用與實踐[J].中國電化教育,2013(11):113129.
責(zé)任編輯(責(zé)任編輯:孫娟)