国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于腳本解構(gòu)的Scratch教學(xué)

2019-10-08 12:58周旺純
中國信息技術(shù)教育 2019年17期
關(guān)鍵詞:逆向工程解構(gòu)重構(gòu)

摘要:本文在計算參與理論的指導(dǎo)下,針對小學(xué)Scratch教學(xué)中的常見問題,立足整體,構(gòu)建了基于腳本解構(gòu)、建構(gòu)的學(xué)習(xí)路徑,努力提升學(xué)生的系統(tǒng)思維能力和創(chuàng)新水平。在此基礎(chǔ)上,作者探討了該路徑在小學(xué)Scratch部分教學(xué)中的實踐應(yīng)用,并提出了教學(xué)注意點(diǎn)。

關(guān)鍵詞:Scratch;解構(gòu);重構(gòu);逆向工程

中圖分類號:G434? 文獻(xiàn)標(biāo)識碼:B? 論文編號:1674-2117(2019)17-0030-04

● 問題提出

Scratch是美國麻省理工學(xué)院開發(fā)的一套開源程序,與傳統(tǒng)編程軟件相比,它不需要用鍵盤逐行輸入代碼,而是拖拽已定義好的程序模塊,像搭建房子一樣實現(xiàn)程序的編寫,讓學(xué)生充分體驗到創(chuàng)作的樂趣。采用Scratch開展程序設(shè)計教學(xué)有如下特點(diǎn):

(1)界面直觀,趣味性強(qiáng)。Scratch提供了類似視頻編輯器的界面舞臺,在上面可以任意添加、編輯和拖拽角色以及背景,加上豐富多彩的角色庫以及背景庫,哪怕只是最簡單的選擇和擺布,也可以設(shè)計出生動有趣的動畫場景,能夠一下子就抓住學(xué)生的注意力。

(2)入門簡單,操作性強(qiáng)。Scratch采用了圖形化編程,學(xué)生只需動動鼠標(biāo)就可以進(jìn)行編輯,控件的上下組合可以清晰地表現(xiàn)程序的流程。Scratch的修改也很簡單,無論是舞臺上的角色,還是腳本區(qū)內(nèi)的腳本,都可以輕松地增減和調(diào)整。

(3)功能強(qiáng)大,創(chuàng)造力強(qiáng)。Scratch不僅可以控制舞臺上的演員的活動,還可以建立復(fù)雜多媒體作品,包含圖像、聲音、動畫、視頻等。Scratch可以對多種事件進(jìn)行響應(yīng),對顏色、視頻以及多種外設(shè)進(jìn)行偵測,此外還可應(yīng)用于機(jī)器人控制、物聯(lián)網(wǎng)設(shè)計等。

正因為Scratch有如此多的優(yōu)點(diǎn),所以它現(xiàn)在已較為廣泛地應(yīng)用于小學(xué)編程學(xué)習(xí)。例如,在江蘇省中小學(xué)教學(xué)研究室編著的《小學(xué)信息技術(shù)》2018版教材中,Scratch已完全替代了Logo語言,成為“算法與程序設(shè)計”模塊最重要的教學(xué)工具。然而在教學(xué)實踐中筆者也發(fā)現(xiàn),利用Scratch開展程序設(shè)計教學(xué),易進(jìn)入如下誤區(qū):

(1)重舞臺規(guī)劃,輕腳本選擇。學(xué)生易關(guān)注絢麗的畫面和環(huán)境創(chuàng)設(shè),將較多的時間用于背景的設(shè)計和角色的選擇,對動畫背后的腳本設(shè)計卻失去了應(yīng)用的興趣。

(2)重控件應(yīng)用,輕程序分析。學(xué)生易滿足于采用簡單的控件(如循環(huán)控制、隨機(jī)偵測等)實現(xiàn)舞臺上角色的頻繁動作和跑位,對背后滲透的算法關(guān)注不夠。

(3)重片段編寫,輕系統(tǒng)設(shè)計。學(xué)生易滿足于動畫設(shè)計的達(dá)成,教學(xué)環(huán)節(jié)設(shè)計過于簡單,未進(jìn)行系統(tǒng)分析,缺少必要的橋梁和支架。

為解決以上問題,筆者嘗試改變通?!安糠帧w”式教學(xué)方法,讓學(xué)生不再只是單純繪制角色、編寫腳本,而是讓“設(shè)計功能完整的應(yīng)用程序”成為他們學(xué)習(xí)Scratch的重要任務(wù)。[1]在實踐中,適時采用基于腳本“解構(gòu)—建構(gòu)”的方法開展Scratch教學(xué)(以下簡稱解構(gòu)式教學(xué)),取得了較為理想的效果。

● 模式分析

解構(gòu),類似于軟件的逆向工程,其根本目的和方法即是“程序理解”。在解構(gòu)式教學(xué)中,學(xué)生對整體的把握、對部分的理解都不是被告知的結(jié)果,而是學(xué)生自己探究或探索所獲,凸顯了學(xué)生作為主要的行為主體的現(xiàn)實存在。[2]在實踐中,筆者探索出基于腳本解構(gòu)的學(xué)習(xí)路徑——整體感知—程序分解—腳本閱讀—功能增改—學(xué)習(xí)創(chuàng)作,讓學(xué)生在實踐創(chuàng)作中學(xué)習(xí)Scratch。該學(xué)習(xí)路徑具有以下特點(diǎn)。

1.有利于提高學(xué)生的學(xué)習(xí)興趣

在Scratch的入門環(huán)節(jié),一般都是初步了解Scratch的主要界面和功能,編寫基礎(chǔ)的腳本。在這一階段,由于內(nèi)容新穎、難度較小,所以學(xué)生的學(xué)習(xí)興趣較為深厚。但是隨著學(xué)習(xí)的深入,任務(wù)難度不斷加深,學(xué)生逐漸有了畏難和厭倦情緒。此時,適時引入一個成功的Scratch作品,讓學(xué)生的學(xué)習(xí)目標(biāo)更明確,學(xué)習(xí)過程更生動、直觀,可以提高學(xué)生的學(xué)習(xí)興趣。

2.有利于學(xué)生對程序的整體把握

Scratch腳本設(shè)置并不難,難的是對動畫(或腳本)進(jìn)行整體設(shè)計。在解構(gòu)式教學(xué)中,學(xué)生學(xué)習(xí)活動的起點(diǎn)是整體,終點(diǎn)也是整體,避免了學(xué)習(xí)任務(wù)的分割化或碎片化,讓學(xué)生對程序的整體架構(gòu)了然于胸。

3.有助于利用學(xué)生的已有經(jīng)驗

在Scratch的教學(xué)中,學(xué)生并非一定是零起點(diǎn),之前他們對Scratch的基礎(chǔ)控件、基本流程都有了一定的了解。通過腳本解構(gòu),讓學(xué)生又回到了熟悉的基礎(chǔ)知識和基本技能的應(yīng)用和操作之中,并讓學(xué)生懂得了如何用和何時用,提升了學(xué)習(xí)效率。

4.有助于聚焦中心學(xué)習(xí)內(nèi)容

Scratch的解構(gòu)式教學(xué),其核心在于腳本的閱讀和修改,而該部分的內(nèi)容是針對本課的教學(xué)重點(diǎn)和難點(diǎn)進(jìn)行設(shè)計的,有利于學(xué)生抓住重點(diǎn)內(nèi)容進(jìn)行實踐,提高了學(xué)習(xí)效率。

5.可靈活調(diào)整學(xué)習(xí)的難易度

在解構(gòu)式教學(xué)中,可根據(jù)學(xué)生的能力、興趣等進(jìn)行針對性的調(diào)整,設(shè)計不同的學(xué)習(xí)方案和創(chuàng)作要求,必要時還可以提供支架,讓所有的學(xué)生都能獲得整體感知,完成必要的學(xué)習(xí)任務(wù)。

● 實踐范例

《吃豆子游戲》(執(zhí)教:建湖縣第二實驗小學(xué)教師商艷)是蘇教版小學(xué)信息技術(shù)五年級第8課,屬于模塊2“算法與程序設(shè)計”的內(nèi)容。本課的重難點(diǎn)是運(yùn)用按鍵控制結(jié)合偵測與隨機(jī)函數(shù)控件創(chuàng)作游戲。教材將教學(xué)內(nèi)容分為三部分:第一部分是理解“面向……方向”控件含義,會判斷角色朝向與角度的關(guān)系,學(xué)會使用方向鍵控制角色;第二部分是運(yùn)用偵測控件完成吃豆人腳本設(shè)計;第三部分是用隨機(jī)函數(shù)讓豆子出現(xiàn)在舞臺上的任意位置。在教學(xué)中還可以適當(dāng)安排創(chuàng)新環(huán)節(jié),讓學(xué)生根據(jù)自己的思考,繼續(xù)對程序進(jìn)行開發(fā)。

1.整體感知

與傳統(tǒng)教學(xué)模式不同,解構(gòu)式教學(xué)法立足于整體,關(guān)注學(xué)生是否能夠把握整個作品的意義,理解作品“為何而做”,從而滲透“自頂而下,逐步求精”的程序設(shè)計思想。

教學(xué)片段:

師:老師給同學(xué)們帶來一款游戲叫“吃豆子”,請同學(xué)們帶著問題玩一玩。邊玩邊思考:如何控制吃豆人移動?豆子出現(xiàn)的位置有什么規(guī)律?(用左移鍵控制吃豆人向左移動,用右移鍵控制吃豆人向右移動。豆子從舞臺上方隨機(jī)位置出現(xiàn),直線下落,碰到吃豆人后消失)

設(shè)計意圖:通過初步體驗游戲,讓學(xué)生感受按鈕響應(yīng)這種交互方式,了解角色的動作與游戲內(nèi)容,為深入研究建立基礎(chǔ),便于學(xué)生對腳本、控件進(jìn)行形象化的解讀。

2.程序分解

程序分解就是將完整的腳本進(jìn)行拆解,目的是理解部分,降低學(xué)習(xí)的難度。程序分解可從三個方面入手:一是按程序功能,將結(jié)構(gòu)化程序按功能分成若干個小程序模塊,閱讀每個小模塊相對獨(dú)立的功能;二是按循環(huán)體,將循環(huán)結(jié)構(gòu)解構(gòu)為循環(huán)變量、終止條件和循環(huán)體幾個部分分別理解;三是按分支,先理解雙分支,再理解多分支,最后閱讀嵌套的分支,必要時畫出流程圖,便于學(xué)生理解。

教學(xué)片段:

活動1:研讀范例程序,認(rèn)識實現(xiàn)角色指定運(yùn)動方向的關(guān)鍵控件。

活動2:拆分舞臺上方任意位置落豆子的動畫,從局部優(yōu)化游戲。

設(shè)計意圖:這兩個部分的教學(xué)活動,分別讓學(xué)生聚集于用方向鍵控制角色的運(yùn)動以及角色的運(yùn)動與響應(yīng)?;顒拥姆纸?,降低了學(xué)習(xí)的難度,使學(xué)習(xí)活動更具有針對性。

3.腳本閱讀

腳本閱讀,其目的是訓(xùn)練學(xué)生讀懂程序,了解控件的功能和參數(shù)設(shè)置,掌握程序的設(shè)計思想、方法和技巧,為下一步應(yīng)用階段的設(shè)計提供過渡橋梁和臺階。在閱讀中,要讓學(xué)生掌握每一個控件的執(zhí)行過程,正確掌握變量的變化。學(xué)生還可通過參數(shù)的多次嘗試修改強(qiáng)化對關(guān)鍵控件的理解。

教學(xué)片段:

活動1:

(1)打開桌面上的“game.sb2”文件,自讀腳本,找出“吃豆人左右移動”對應(yīng)的腳本模塊。游戲中還常用什么鍵控制左右移動呢?嘗試修改腳本看能否實現(xiàn)功能。

(2)在剛才的腳本中,“當(dāng)按下……鍵”有什么作用?嘗試修改為其他方向。

活動2:

(1)找出三種動畫效果分別對應(yīng)的腳本(出現(xiàn)、下落、消失)。

(2)控件“將y坐標(biāo)增加-2”的作用是什么?

設(shè)計意圖:讓學(xué)生在刪除、修改控件的過程中,實現(xiàn)不同的動畫效果,從而深入了解控件使用方法。

4.功能增改

通過研討腳本,然后模仿修改或編寫腳本,可以讓學(xué)生了解Scratch的基本控制結(jié)構(gòu)以及不同角色間信息傳遞的規(guī)律,更為深刻地理解程序各部分的功能和實現(xiàn),為以后的熟練運(yùn)用和創(chuàng)作提升打下基礎(chǔ)。

教學(xué)片段:

活動1:

模仿左右移動模塊腳本,實現(xiàn)吃豆人上下移動(如表1)。

過渡:我們已經(jīng)掌握了這兩種控件的使用方法。怎樣修改這兩個控件的參數(shù),才能實現(xiàn)吃豆人上下移動呢?

請學(xué)生演示為“吃豆人”添加上下移動腳本,展示后,師生交流:

(1)你模仿了哪些腳本模塊實現(xiàn)吃豆人上下移動的呢?

(2)“當(dāng)按下……鍵”與“面向……方向”控件之間有什么關(guān)系?

活動2:

修改豆子下落模塊控件中的參數(shù)(如表2),改變游戲的難易程度。

小結(jié):當(dāng)遇到復(fù)雜腳本時,我們可以將腳本拆分。通過分析、修改局部腳本中的關(guān)鍵控件,實現(xiàn)局部動畫,進(jìn)而組合出整體動畫。調(diào)整隨機(jī)函數(shù)的參數(shù)范圍,也使得游戲變得更有趣。

設(shè)計意圖:本環(huán)節(jié)將組合模塊拆分,引導(dǎo)學(xué)生嘗試反復(fù)修改,實現(xiàn)不同的動畫效果,從而深入了解控件使用方法。

5.學(xué)習(xí)創(chuàng)作

解構(gòu)式教學(xué)起于整體,又終于整體,目的是在學(xué)生深刻理解各功能模塊的基礎(chǔ)上進(jìn)行重構(gòu)和創(chuàng)新,從而對所學(xué)習(xí)的內(nèi)容有更為深刻的認(rèn)識。該環(huán)節(jié)應(yīng)鼓勵學(xué)生大膽想象,創(chuàng)作出更加精美的作品,讓學(xué)生在實踐中獲取靈感,體驗成功,獲得創(chuàng)新的樂趣。

教學(xué)片段:

師:同學(xué)們,我們已經(jīng)了解了“吃豆子”游戲是如何設(shè)計的。結(jié)合今天所學(xué)控件,你還有哪些好主意讓游戲變得更有趣?請跟同組成員邊討論邊完成導(dǎo)學(xué)單。

活動1:利用所學(xué),合理創(chuàng)編。

(1)打開桌面的“素材包”,結(jié)合“吃豆子”游戲合理想象。運(yùn)用所學(xué)控件,通過改變角色造型、動畫效果、舞臺背景、交互響應(yīng)方式,在本課剩余的時間內(nèi),創(chuàng)造一個自己的“吃豆子”游戲(如上頁圖)。

(2)自由創(chuàng)作。

(3)同桌互玩。

設(shè)計意圖:學(xué)生通過創(chuàng)造性的想象,創(chuàng)作個性化作品,既體現(xiàn)團(tuán)隊合作的意識,又充分地調(diào)動了每個學(xué)生的學(xué)習(xí)積極性,讓不同水平的學(xué)生都能在游戲創(chuàng)作中體驗快樂,獲得成功,實現(xiàn)最大價值的發(fā)展。

● 注意問題

解構(gòu)式教學(xué)在Scratch部分的教學(xué)并不是一種萬能教學(xué)模式,在教學(xué)選擇上應(yīng)注意如下幾點(diǎn):

(1)解構(gòu)的目的是理解和創(chuàng)新,不能為解構(gòu)而解構(gòu)。解構(gòu)式教學(xué)強(qiáng)調(diào)在拆解剖析之后進(jìn)行重構(gòu),重構(gòu)不等于或不限于簡單的原貌呈現(xiàn),應(yīng)是在借鑒參考基礎(chǔ)上的創(chuàng)新。[3]

(2)用于學(xué)習(xí)并解構(gòu)的程序應(yīng)具有一定的典型性,其一定是與本課教學(xué)目標(biāo)和教學(xué)重難點(diǎn)緊密契合的,應(yīng)該是能夠直接訓(xùn)練學(xué)生學(xué)習(xí)程序設(shè)計能力的典型腳本,應(yīng)該包含一定的設(shè)計思想、方法和技巧。

(3)解構(gòu)式教學(xué)應(yīng)與Scratch學(xué)習(xí)內(nèi)容相吻合,應(yīng)建立在學(xué)生已經(jīng)初步掌握Scratch的基本操作和常用控件,有設(shè)計和編寫完整應(yīng)用程序的需求的基礎(chǔ)之上。該教學(xué)方法也不可濫用,尤其是單元學(xué)習(xí)的最后階段,以免限制學(xué)生的創(chuàng)新思維,應(yīng)鼓勵學(xué)生采用不同的設(shè)計方法和算法來實現(xiàn)需要完成的作品。

參考文獻(xiàn):

[1]王旭卿.從計算思維到計算參與:美國中小學(xué)程序設(shè)計教學(xué)的社會化轉(zhuǎn)向與啟示[J].中國電化教育,2014(03):97-100.

[2]朱彩蘭.基于解構(gòu)的教學(xué)設(shè)計[J].中國信息技術(shù)教育,2018(20):24-26.

[3]周旺純.字字皆文章——淺談小學(xué)信息技術(shù)《輸入文字》部分的有效教學(xué)[J].中小學(xué)電教,2013(09):39-41.

作者簡介:周旺純(1972.11—),高級教師,工學(xué)學(xué)士學(xué)位,主要研究方向為信息技術(shù)教育、教育信息化。

基金項目:江蘇省教育科學(xué)“十三五”規(guī)劃2016年度課題“小學(xué)信息技術(shù)學(xué)科學(xué)生計算思維培養(yǎng)的實踐研究”(2016-GH01010-00119)。

猜你喜歡
逆向工程解構(gòu)重構(gòu)
長城敘事的重構(gòu)
還原
重構(gòu)
學(xué)科哲學(xué)導(dǎo)向的高中歷史教學(xué)重構(gòu)
彭濤形而上的現(xiàn)世解構(gòu)
一種改進(jìn)的點(diǎn)云數(shù)據(jù)組合精簡算法
基于Hibernate逆向工程對企業(yè)組織建模研究
逆向工程技術(shù)在高職模具專業(yè)創(chuàng)新能力培養(yǎng)中的應(yīng)用
寫于斯德哥爾摩
解構(gòu)二次元