摘要:ActionScript是Flash軟件內(nèi)置的腳本語言,也是Flash重要的組成部分,缺乏程序設(shè)計基礎(chǔ)的中專學生學習起來有較大的困難。因此,教師在教學中應(yīng)針對學生的特點,改變傳統(tǒng)的教學方式,采用合理的方法、適當?shù)氖侄谓M織和實施教學。
關(guān)鍵詞:ActionScript;Flash;程序;教學方法
ActionScript是Flash軟件內(nèi)置的腳本語言,在其發(fā)展過程中吸收了C++、Java等程序設(shè)計語言的部分特點,已成為一種面向?qū)ο蟮挠嬎銠C程序設(shè)計語言。運用ActionScript為動畫編程,可以使Flash影片以非線性方式播放,實現(xiàn)各種動畫特效,對影片進行良好的控制,并可以實現(xiàn)人機交互以及與網(wǎng)絡(luò)服務(wù)器交互的功能。
ActionScript是Flash教學內(nèi)容的一個重要組成部分。因為涉及程序設(shè)計,學生在學習時往往會產(chǎn)生一定的困難和畏難情緒,對Flash原有的興趣和學習熱情會減弱許多。筆者經(jīng)過多年的教學實踐,在教學方法上進行了一些探索,幫助學生順利入門并逐步樹立了程序設(shè)計理念,取得了較好的教學效果。
通過實例帶動理論教學
如果按照傳統(tǒng)的教學方式,像講解一般程序設(shè)計語言那樣從基本概念講起,上來就介紹“變量”、“常量”、“對象”、“事件”、“方法”等一些名詞,學生的注意力很快就會分散,甚至做一些與課堂教學無關(guān)的事情。一節(jié)課下來,幾乎沒有任何收獲。
筆者針對中專學生的特點,采取了以實例帶動理論教學的方法。首先,對教學內(nèi)容的順序加以整理,進行重新組合,從簡單而又實用的知識開始,將理論知識蘊含在實例教學當中。其次,在實例講解的過程中,將相關(guān)的知識點以最簡單的語言向?qū)W生加以介紹,這樣既可以始終保持學生的興趣,又可以將枯燥的理論知識分散開來,便于學生吸收。
在第一次課上,筆者從常用指令中的play指令和stop指令講起。我準備了一個交互式動畫的實例,內(nèi)容為一個翅膀不斷扇動的小鳥在空中來回飛翔,通過兩個按鈕對它的運動加以控制。先利用幾張小鳥圖片制作一個具備連續(xù)飛行功能的動畫元件,將其命名為“bird”,并向?qū)W生介紹“常量”、“變量”的概念及其命名規(guī)則。然后創(chuàng)建小鳥在空中飛翔的動畫效果,最后通過在按鈕中加入play和stop指令控制動畫播放或者停止。這時再向?qū)W生介紹如何為按鈕添加程序及程序的書寫格式要求、應(yīng)注意的問題等內(nèi)容。因為學生始終關(guān)心著下一步如何操作,所以在整個講授過程中精神一直高度集中,教學效率很高。這樣,在一個生動有趣的實例講解過程中,學生便輕松地掌握了教學知識點。
針對教學內(nèi)容設(shè)計例題
教材在講解常用語句和指令等內(nèi)容時,通常將其集中在一起介紹,先列出其格式,再說明其功能、參數(shù),通篇看起來像一本速查手冊。這樣的介紹方法本來無可厚非,但卻給缺乏編程基礎(chǔ)的學生在理解和掌握上帶來了一定的困難。如果直接講解,學生雖然也能明白其含義,但總是不知道應(yīng)該在什么地方使用、在遇到具體問題時怎樣使用,處于似懂非懂的狀態(tài)。
為此,筆者將相關(guān)內(nèi)容進行了整理和分類,將使用方法相同或相近的語句和指令集中在一起講,以實用為原則,從中選擇一個或幾個有針對性的問題設(shè)計出簡單、有趣并有一定實用性的例題,幫助學生學習相關(guān)的知識。在例題設(shè)計的過程中盡量做到以點帶面,爭取以最少的例子說明最多的問題,把更多的時間留給學生親自動手操作。相同類型的過多例題會導(dǎo)致學生產(chǎn)生厭煩心理,不利于后續(xù)內(nèi)容的教學。
如在講解with指令時,我通過對上面實例的修改加以介紹。雖然利用添加了play和stop指令的兩個按鈕可以控制小鳥在空中的來回飛行,但小鳥在停止飛行時翅膀仍然在不斷扇動。學生自然會產(chǎn)生疑問,有沒有辦法讓小鳥的翅膀停止扇動呢?此時,我便向?qū)W生解釋,翅膀不能停止扇動的原因是因為我們沒有通知小鳥。那么,如何通知小鳥,讓它的翅膀停下來呢?可以在停止按鈕上繼續(xù)添加程序:
with(bird){
stop();
}
學生立即便明白了該指令的功能及使用方法,進而自主完成了播放按鈕程序的修改。雖然這樣的修改不符合小鳥的飛行常理,但對學生的學習提供了極大的幫助。
利用課件講解抽象概念
利用課件可以幫助教師有效地突破教學中的重點、難點,有利于說明一些比較抽象的概念和知識,并可對學生施行多角度、多層次的信息刺激,可以激發(fā)學生的學習興趣,增強學生的認知。實踐證明,一個好的課件可以使教學收到事半功倍的效果。
“層”是Flash中的一個重要概念,而且只能用程序來控制和利用它。“層”與以前學習的“圖層”是兩個不同的概念,但又有一些相似之處,學生常常會將兩個概念相混淆,感覺“層”既看不見,又摸不著。為幫助學生理解,我利用Flash制作了一個小課件:在主時間軸上“飄”出一張“紙”,然后又由一張紙衍生出多張紙,其中的每一張紙就是一“層”,再利用相應(yīng)的指令將影片文件加載到不同的“層”并加以控制,從而將“層”的概念及特點直觀地表現(xiàn)出來。
在講解循環(huán)語句時,我設(shè)計的課件將屏幕分為左右兩個區(qū)域,左側(cè)區(qū)域為隨循環(huán)次數(shù)而增加的圖形對象,右側(cè)區(qū)域則以框圖的形式實時地、動態(tài)地顯示當前循環(huán)的執(zhí)行流程、對應(yīng)語句、循環(huán)條件的判斷及循環(huán)變量的改變方式、當前值等信息。
通過課件輔助教學,不但可將一些抽象、枯燥的內(nèi)容以直觀的形式表現(xiàn)出來,方便教師的教學與學生的學習,還可進一步提高學生對Flash的學習熱情和興趣,增強他們的創(chuàng)新意識,有的學生還嘗試著用Flash制作了小課件。
利用綜合例題幫助學生
建立程序設(shè)計的基本思路
雖然一般的Flash作品的程序設(shè)計部分比較簡單,在掌握一些基本語句和指令的基礎(chǔ)上就可以制作出具有一定實用價值的作品,但為了學生今后進一步學習和發(fā)展,有必要對其進行程序設(shè)計基本方法和思路的培養(yǎng)。
對于一些綜合性較強的例題,學生根本不知從何入手。在備課時可以根據(jù)具體情況將例題分成若干個小模塊,再分別處理。首先,幫助學生充分理解題目要求,對問題進行合理分析并理順各個模塊間的關(guān)系,設(shè)置所需變量及對象,確定添加程序的位置。其次,利用課件進行程序設(shè)計教學,課件的顯示分為左、中、右三個區(qū)域:左側(cè)區(qū)域用自然語言描述要解決問題的步驟,通俗易懂,比較接近學生的思維方式,便于引導(dǎo)學生得出相應(yīng)的算法;中間區(qū)域是將自然語言的描述以流程圖的形式加以顯示,以利于將其轉(zhuǎn)換為程序代碼;右側(cè)區(qū)域則對應(yīng)流程圖逐行添加程序代碼,代碼書寫完畢后,將其復(fù)制到Flash相應(yīng)對象的動作面板中進行調(diào)試運行。
通過綜合例題的教學,可以提高學生分析問題和解決問題的能力,使其能夠順利進入程序編寫過程并掌握一些簡單的算法,初步形成程序設(shè)計的基本思路,為今后的學習打下良好的基礎(chǔ)。
ActionScript是Flash中最神奇、最具魅力的內(nèi)容之一,如何指導(dǎo)學生熟練地運用它,還需要教師在今后的教學實踐中不斷地探索和研究。
作者簡介:
荊延國(1966—),天津市第二商業(yè)學校講師,主要從事中專計算機應(yīng)用教學。(本文責任編輯:王恒)