□ 王美華 羅 靜 梁志海 吳樹敏 劉躍勇
ActionScript2.0+XML在網(wǎng)絡(luò)課程開發(fā)中的應(yīng)用*
□ 王美華 羅 靜 梁志海 吳樹敏 劉躍勇
文章提出ActionScript2.0+XML在網(wǎng)絡(luò)課程開發(fā)中的應(yīng)用模式,并將其運(yùn)用到照明設(shè)計(jì)師網(wǎng)絡(luò)課程建設(shè)實(shí)踐中,解決了使用性低,加載速度慢的問題,為后續(xù)網(wǎng)絡(luò)課程的開發(fā)提供了有價(jià)值的參考和借鑒。
網(wǎng)絡(luò)課程;ActionScript2.0;XML;課程資源;照明設(shè)計(jì)師
網(wǎng)絡(luò)課程是通過網(wǎng)絡(luò)形式表現(xiàn)的某門學(xué)科的教學(xué)內(nèi)容及實(shí)施教學(xué)活動(dòng)的綜合,它包括按一定的教學(xué)目標(biāo)、教學(xué)策略組織起來的教學(xué)內(nèi)容和網(wǎng)絡(luò)教學(xué)支撐環(huán)境[1]兩大部分。網(wǎng)絡(luò)課程在教學(xué)中以一定的教學(xué)目標(biāo)為指向,承載并協(xié)調(diào)著教師、學(xué)生、資源與環(huán)境四個(gè)關(guān)鍵要素[2]。本文主要從資源構(gòu)建方面進(jìn)行探討,將ActionScript2.0+XML開發(fā)形式運(yùn)用到“照明設(shè)計(jì)師”網(wǎng)絡(luò)課程資源架構(gòu)開發(fā)中,來研究是否能夠達(dá)到預(yù)期的效果。
網(wǎng)絡(luò)課程開發(fā)中的資源構(gòu)建常見形式可分為基于Moodle和基于Web兩種,這兩種方式在對資源組織和構(gòu)建時(shí),都存在架構(gòu)的可重用性較差、加載視頻、音頻、swf動(dòng)畫等大資源文件需要等待加載完畢后才能觀看等問題。本文針對這些問題提出Action-Script2.0+XML的資源組織開發(fā)形式,并運(yùn)用到具體的網(wǎng)絡(luò)課程開發(fā)實(shí)踐中。ActionScript2.0簡寫為AS2.0,是一種面向?qū)ο蟮木幊陶Z言[3],可以加載、分析、發(fā)送、生成和操作外部XML文檔,實(shí)現(xiàn)各種人機(jī)交互、數(shù)據(jù)交互功能[4],導(dǎo)出的swf文件具有流暢[5]、流媒體播放[6]等特性,可以很好的解決加載大資源文件問題。XML是一種可擴(kuò)展的標(biāo)簽語言,它的功能主要用于數(shù)據(jù)傳輸和數(shù)據(jù)存儲(chǔ)[7],存儲(chǔ)在XML文檔中的數(shù)據(jù)不僅可以被計(jì)算機(jī)理解也可以被人類的理解。
本文主要探索將AS2.0+XML應(yīng)用于“照明設(shè)計(jì)師”網(wǎng)絡(luò)課程的開發(fā),該課程內(nèi)容主要分為理論知識(shí)、操作技能、模擬考試、答疑解難這四個(gè)模塊,課程的最終效果如圖1所示:
圖1 照明設(shè)計(jì)師網(wǎng)絡(luò)課程效果圖
照明設(shè)計(jì)師網(wǎng)絡(luò)課程的左邊主要是“課程簡介”、“課程目錄”和“單位信息”,當(dāng)點(diǎn)擊“課程目錄”中的菜單內(nèi)容時(shí),中間用于顯示內(nèi)容的影片剪輯(MovieClip)則加載相應(yīng)的學(xué)習(xí)內(nèi)容,該內(nèi)容播放完成后可自動(dòng)加載下一節(jié)的內(nèi)容,并更新相應(yīng)的課程目錄菜單。
網(wǎng)絡(luò)課程右上角為“理論知識(shí)”、“操作技能”、“模擬考試”、“答疑解難”這四個(gè)模塊的交互按鈕,點(diǎn)擊相應(yīng)的按鈕之后,左邊課程目錄則發(fā)生相應(yīng)的變換,并初始化中間影片剪輯中的內(nèi)容。其中“理論知識(shí)”為該網(wǎng)絡(luò)課程的主要知識(shí)學(xué)習(xí)內(nèi)容,“操作技能”為與該課程相關(guān)的一系列仿真交互性實(shí)驗(yàn),“模擬考試”則用于該課程學(xué)完后對學(xué)習(xí)者學(xué)習(xí)情況進(jìn)行測試。
菜單中間部分主要用于顯示網(wǎng)絡(luò)課程相關(guān)內(nèi)容的影片剪輯(MovieClip),如理論學(xué)習(xí)、操作技能實(shí)驗(yàn)、模擬考試系統(tǒng)、疑難解答等內(nèi)容。
菜單底部主要用于放置控制內(nèi)容播放、暫停等操作的控制條,以便學(xué)習(xí)者能夠?qū)W(xué)習(xí)內(nèi)容進(jìn)行良好的控制。
照明設(shè)計(jì)師網(wǎng)絡(luò)課程第一層文檔結(jié)構(gòu)主要包括data文件夾、template文件夾及index.html文件(如圖2所示)。
圖2 照明設(shè)計(jì)師資源文檔結(jié)構(gòu)
其中 data文件夾中主要包含了“理論知識(shí)”模塊中各章節(jié)swf格式的內(nèi)容,“技能操作”模塊中各仿真實(shí)驗(yàn)的swf格式的文件,“模擬考試”模塊中各套swf格式的考試題,“疑難解答”模塊中常見問題的swf格式文件,以及swf格式的背景聲音。
template文件夾中主要包含了XML文件夾、contentplayer.html、adpter.swf和 main.swf文件,其中contentplayer.html調(diào)用adpter.swf文件,由adpter.swf文件加載main.swf。adpter.swf文件主要作用是存儲(chǔ)相關(guān)變量并加載XML文件,對文件進(jìn)行解析后存儲(chǔ)到相應(yīng)的變量之中,并提供后臺(tái)數(shù)據(jù)庫交互時(shí)所需的相關(guān)接口。main.swf文件主要用于網(wǎng)絡(luò)課程界面的規(guī)劃控制,包含資源模塊間交互的AS2.0接口函數(shù)定義等內(nèi)容。
XML文件夾中存儲(chǔ)了“理論知識(shí)”、“技能操作”、“模擬考試”、“答疑解難”等模塊內(nèi)容的manifest.xml文件,以及存儲(chǔ)了模擬考試題內(nèi)容的test1.xml至test5.xml的五個(gè)文件和“答疑解難”中常見問題內(nèi)容的FAQ.xml文件。
由以上課程資源文檔結(jié)構(gòu)描述可知,XML在該網(wǎng)絡(luò)課程資源架構(gòu)中扮演著極其重要的角色,了解每個(gè)XML文件的結(jié)構(gòu)對于理解網(wǎng)絡(luò)課程資源的開發(fā)非常重要。
(1)主架構(gòu)manifest.xml文件如下所示:
該XML文件在<tocTree></tocTree>標(biāo)簽之間存儲(chǔ)著“理論知識(shí)”模塊的內(nèi)容,格式為“<node id="m0" titleName="*" completion="0" isEnabled="1"/>”。其中id屬性用于標(biāo)記該模塊的swf(m0.swf)文件內(nèi)容;titleName屬性用于顯示該文件的名稱。completion屬性用于判斷該內(nèi)容是否播放完成,播放完成則設(shè)置為1,否則設(shè)置為0。isEnabled屬性用于判斷該模塊是否具有子文件,如果值為1代表有子文件,否則沒有子文件。這樣設(shè)置的好處在于加載和解析XML文件作為右邊的菜單時(shí),便于搜索和剪輯。
(2)模擬考試題目內(nèi)容test1.xml文件如下所示:
該XML文件在<question></question>標(biāo)簽之間存儲(chǔ)著單選題和判斷題的相關(guān)內(nèi)容。子標(biāo)簽<item></item >之間存儲(chǔ)著題目內(nèi)容,Type屬性用于判斷題目的類型(單選題或多選題),qus屬性用于描述題目的內(nèi)容,ans屬性用于存儲(chǔ)該題的正確答案,score屬性用于存儲(chǔ)該題的分?jǐn)?shù),<item option="A.費(fèi)德勒"/>子標(biāo)簽用于存儲(chǔ)題目選項(xiàng)的內(nèi)容。
(3)疑難解答內(nèi)容FAQ.xml文件如下所示:
該XML文件在<content></content>標(biāo)簽存儲(chǔ)著常見的問題和解決的辦法,其中每個(gè)子標(biāo)簽<resource></ resource > 通 過 <question></question>子標(biāo)簽存儲(chǔ)常見的問題,通過<answer></answer>子標(biāo)簽存儲(chǔ)問題的解決方法。
限于篇幅,本文主要介紹照明設(shè)計(jì)師網(wǎng)絡(luò)課程中“理論知識(shí)”模塊,包括核心算法的講解和實(shí)現(xiàn)效果的展示兩部分。其它模塊涉及運(yùn)用AS2.0和XML文件進(jìn)行交互操作的,都與此大同小異,在此不作詳述。
本研究的核心算法主要以XML文件的加載與解析、“理論知識(shí)”模塊中菜單的生成為例展開。
(1)XML文件加載與解析
在照明設(shè)計(jì)師網(wǎng)絡(luò)課程的建設(shè)過程中,XML文件在整個(gè)架構(gòu)中有著極其重要的作用,XML文件結(jié)構(gòu)的良好設(shè)計(jì)與控制,直接關(guān)系到整個(gè)網(wǎng)絡(luò)課程的流暢性和可重用性等多方面因素,所以AS2.0怎樣對XML文件進(jìn)行加載和解析必然成為模式中的重要組成部分。該課程中XML文件的加載、解析過程的核心代碼如下所示:
(2)理論知識(shí)菜單顯示
“理論知識(shí)”模塊中用XML內(nèi)容實(shí)現(xiàn)菜單的核心代碼,包括XML的遍歷與存儲(chǔ),使用存儲(chǔ)的內(nèi)容生成導(dǎo)航菜單等。
首先,XML內(nèi)容的遍歷與存儲(chǔ)如下saveTheoryKnowledgeFun(*)函數(shù)所示:
//--函數(shù):用于解析理論學(xué)習(xí)XML中的內(nèi)容并存儲(chǔ)到相應(yīng)數(shù)組中
該函數(shù)主要通過對XML文件進(jìn)行三層循環(huán)的遍歷來完成對相關(guān)內(nèi)容的存儲(chǔ),由于網(wǎng)絡(luò)課程中只用到三層的菜單結(jié)構(gòu),所以只進(jìn)行三層循環(huán)的遍歷。
其次,理論知識(shí)內(nèi)容第一次加載函數(shù)代碼如下所示:
函數(shù)主要通過檢查當(dāng)前節(jié)點(diǎn)是否可用,來獲取相應(yīng)的節(jié)點(diǎn)名稱和標(biāo)簽數(shù),加載相應(yīng)的swf文件到影片剪輯中(MovieClip)進(jìn)行播放,并設(shè)置網(wǎng)絡(luò)課程的背景聲音音量。
最后,初始化理論知識(shí)模塊菜單的函數(shù)代碼如下所示:
函數(shù)主要通過遍歷理論知識(shí)的XML文件的三層內(nèi)容,并判斷每一層上的內(nèi)容是否存在子節(jié)點(diǎn),繼而從庫里加載不同類型的元件到theoryMC中,并設(shè)置其相應(yīng)的位置、文本、打開狀態(tài)等屬性,實(shí)現(xiàn)最終菜單的顯示。
本研究對課程模塊所涉到的內(nèi)容進(jìn)行測試,AS2.0+XML在照明設(shè)計(jì)師網(wǎng)絡(luò)課程中的理論知識(shí)菜單、模擬考試、答疑解難模塊的運(yùn)行效果圖如圖3至圖5所示:
圖3理論知識(shí)菜單
圖4模擬考試界面
圖5答疑解難界面
本研究通過將AS2.0+XML模式運(yùn)用到開發(fā)實(shí)踐中,在解決可重用性和加載大資源文件這兩方面具有良好的效果,在此結(jié)構(gòu)的基礎(chǔ)上開發(fā)新的網(wǎng)絡(luò)課程,只需要修改相關(guān)的XML文件即可,為后續(xù)的網(wǎng)絡(luò)課程開發(fā)提供良好的參考和借鑒。
[1]教育部教育信息化技術(shù)標(biāo)準(zhǔn)委員會(huì).CELTS-22.1.網(wǎng)絡(luò)課程評(píng)價(jià)規(guī)范.教育部,2002.
[2]李遠(yuǎn)航,秦丹.利用Web2.0技術(shù)實(shí)現(xiàn)網(wǎng)絡(luò)課程資源再生研究[J].中國電化教育,2011,(4).
[3]朱中尉.利用Flash ActionScript2.0制作動(dòng)態(tài)交互式課件[J].中國教育信息化,2010,(10).
[4]崔創(chuàng)來.基于Flash8、ActionScript2.0多媒體電子地圖的設(shè)計(jì)與開發(fā)[J].華北國土資源,2010,(01).
[5]吳愛珍.如何利用Flash制作CAI課件[J].職業(yè)技術(shù)教育,2001,1(22):275
[6]王秀清,陳兆英,于朝霞.基于Flash流媒體技術(shù)的高等數(shù)學(xué)網(wǎng)絡(luò)課堂的建設(shè)與實(shí)踐[J].濰坊學(xué)院學(xué)報(bào),2010,(12):10.
[7]吳敏,徐德智.XML數(shù)據(jù)的存儲(chǔ)實(shí)現(xiàn)研究[J].計(jì)算機(jī)工程,2003.
G40-057
B
1009—458x(2012)01—0088—05
*資助資金:廣東省科技計(jì)劃項(xiàng)目,項(xiàng)目編號(hào):2010B080701070
2011-10-15
王美華;羅靜;吳樹敏;劉躍勇。華南農(nóng)業(yè)大學(xué)信息學(xué)院(510642)。
梁志海,精通軟件科技有限公司(510070)。
責(zé)任編輯 柯 南