王大根
[摘要]Android移動(dòng)應(yīng)用開發(fā)類課程是一門實(shí)踐性很強(qiáng)的課程,要求學(xué)生具有Java語言基礎(chǔ),基礎(chǔ)不好或無Java語言基礎(chǔ)的非軟件類專業(yè)學(xué)生在學(xué)習(xí)過程中會(huì)產(chǎn)生畏難、厭學(xué)情緒。提出一種基于AppInventor技術(shù)學(xué)習(xí)Android課程的方法,該方法改善了傳統(tǒng)教學(xué)模式的弊端,提高了學(xué)生的學(xué)習(xí)興趣。
[關(guān)鍵詞]AppInventor;中職;Android移動(dòng)應(yīng)用;教學(xué)研究
[中圖分類號(hào)]? G712??????????? ??????? [文獻(xiàn)標(biāo)志碼]? A???????? ?????? [文章編號(hào)]? 2096-0603(2018)36-0067-01
一、AppInventor技術(shù)在Android類課程中的應(yīng)用
AppInventor是Google公司在2010年7月推出的一款A(yù)ndroid編程工具。AppInventor完全基于網(wǎng)頁進(jìn)行,開發(fā)過程中不需要使用Java的虛擬機(jī),圖形化積木式的拖放組件以此實(shí)現(xiàn)Andriod應(yīng)用的開發(fā)。AppInventor相比其他開發(fā)方式,有很多優(yōu)點(diǎn),例如,AppInventor進(jìn)行編程時(shí),對(duì)開發(fā)環(huán)境要求簡單,開發(fā)過程具有可視化屬性,組件應(yīng)用模塊化,調(diào)試運(yùn)行同步化等優(yōu)點(diǎn),這樣的屬性大大降低了開發(fā)的難度,提高了開發(fā)的效率。因?yàn)锳ppInventor具有這些優(yōu)點(diǎn),AppInventor開發(fā)工具非常適合中職院校移動(dòng)應(yīng)用開發(fā)專業(yè)學(xué)生學(xué)習(xí)。
二、AppInventor的課程設(shè)計(jì)
(一)課程定位
“AppInventor移動(dòng)應(yīng)用技術(shù)開發(fā)”是移動(dòng)應(yīng)用開發(fā)的必修課之一,學(xué)生在接觸這門課之前,已經(jīng)學(xué)習(xí)了“計(jì)算機(jī)基礎(chǔ)和程序設(shè)計(jì)基礎(chǔ)”系列課程,對(duì)程序設(shè)計(jì)已經(jīng)有一定的知識(shí)基礎(chǔ),現(xiàn)階段學(xué)的“AppInventor移動(dòng)應(yīng)用技術(shù)開發(fā)”課程是將之前所學(xué)的程序設(shè)計(jì)基礎(chǔ)知識(shí)運(yùn)用起來,讓學(xué)生逐步熟悉Andriod基本應(yīng)用開發(fā)能力,將學(xué)生原來的理論水平轉(zhuǎn)化為實(shí)踐能力。并為接下來更加深入地學(xué)習(xí)Andriod平臺(tái)打下良好的基礎(chǔ)。
(二)課程設(shè)計(jì)思路
任何學(xué)習(xí)活動(dòng)中,學(xué)習(xí)者一定要作為主體地位,課程學(xué)習(xí)的主體是學(xué)生,所以我們要采取一些教學(xué)方法,讓作為主體地位的學(xué)生愿意學(xué)習(xí)新知識(shí)。例如,采取任務(wù)驅(qū)動(dòng)法引導(dǎo)學(xué)生自主學(xué)習(xí),啟發(fā)學(xué)生對(duì)任務(wù)的思考,教師在一旁提供即時(shí)反饋,學(xué)生收到反饋,一點(diǎn)點(diǎn)摸索地學(xué)習(xí)。教學(xué)內(nèi)容設(shè)計(jì)核心指標(biāo)是以就業(yè)為導(dǎo)向,以能力為本,以職業(yè)實(shí)踐為主體等理念。對(duì)“AppInventor”手機(jī)應(yīng)用開發(fā)的基礎(chǔ)理論、基礎(chǔ)方法和基礎(chǔ)技能,循序漸進(jìn)地提高,讓學(xué)生可以準(zhǔn)確地掌握AppInventor的基礎(chǔ)知識(shí),親自可以使用基礎(chǔ)方法解決教學(xué)中教師給出的任務(wù)。學(xué)生完成教師任務(wù),獲得積極的反饋,提高學(xué)生學(xué)習(xí)AppInventor知識(shí)的熱情,操作過程中提高學(xué)生的操作能力和邏輯思維能力。
(三)教學(xué)目標(biāo)
學(xué)生自行操作AppInventor組件,對(duì)程序設(shè)計(jì)方法理解,對(duì)設(shè)計(jì)方法有清晰的認(rèn)識(shí),對(duì)AppInventor組件可以進(jìn)行一些操作,例如,設(shè)計(jì)一些簡單的界面、寫出簡單的計(jì)算器小程序。在教學(xué)過程中培養(yǎng)學(xué)生的團(tuán)隊(duì)協(xié)作能力和溝通能力,對(duì)一些新的技術(shù)和方法進(jìn)行交流,養(yǎng)成對(duì)創(chuàng)新思維的重視,培養(yǎng)創(chuàng)造能力。
(四)教學(xué)內(nèi)容設(shè)計(jì)
根據(jù)課程定位、課程設(shè)計(jì)思路和教學(xué)目標(biāo)的分析,確定了平臺(tái)簡介與開發(fā)環(huán)境搭建、界面布局和基本控件、程序設(shè)計(jì)基礎(chǔ)、傳感器應(yīng)用、多媒體應(yīng)用、數(shù)據(jù)存儲(chǔ)、通信連接、游戲開發(fā)為課程主要內(nèi)容,具體教學(xué)項(xiàng)目如下。
本節(jié)課堂是設(shè)計(jì)一個(gè)小游戲:
首先教師要?jiǎng)?chuàng)設(shè)情境,引導(dǎo)學(xué)生進(jìn)入任務(wù):同學(xué)們,我們都玩過一個(gè)游戲叫切水果,這個(gè)游戲很簡單,手指對(duì)著屏幕滑動(dòng)即可,我們今天也嘗試寫出一個(gè)切水果的游戲。
教師對(duì)任務(wù)進(jìn)行詳細(xì)的描述:(1)初始化玩家血量是200、積分為0。(2)游戲界面是有一片藍(lán)色的天空,天空隨機(jī)掉下水果。(3)玩家用手對(duì)掉下的水果滑動(dòng),滑動(dòng)切除,游戲提示加1分,手指滑到石頭血量減20。分?jǐn)?shù)扣完,游戲結(jié)束。
教師對(duì)任務(wù)要進(jìn)行分解,把大目標(biāo)分解為一些可以分工較容易實(shí)現(xiàn)的小目標(biāo)。(1)畫布,圖像精靈應(yīng)用軟件介紹。(2)水果、石頭從屏幕上方掉落如何才能實(shí)現(xiàn)。(3)玩家滑到水果,程序如何進(jìn)行判斷。(4)用戶滑到石頭或者水果程序如何判斷。(5)完成游戲結(jié)束判斷處理模塊。
此時(shí)教師應(yīng)該對(duì)任務(wù)步驟制訂實(shí)施方案:(1)根據(jù)任務(wù)分解流程,教師將每個(gè)步驟進(jìn)行分解,然后對(duì)細(xì)分的步驟,分配小組進(jìn)行討論,給出具體的行動(dòng)方案。(2)畫出每個(gè)程序的流程圖。
此時(shí)步驟到了編寫和調(diào)試程序,教師對(duì)每個(gè)小組分配任務(wù),給予相應(yīng)的資料,小組成員開始根據(jù)資料進(jìn)行討論、分析,寫出相應(yīng)的核心代碼。(1)設(shè)計(jì)游戲場景。(2)設(shè)計(jì)生命條和積分總計(jì)數(shù)。(3)學(xué)生編寫水果、石頭掉落的程序代碼,教師進(jìn)行即時(shí)指導(dǎo)。(4)計(jì)時(shí)器刷新顯示水果掉落的過程。(5)游戲玩家不小心滑到水果和石頭的游戲程序的運(yùn)算。(6)游戲結(jié)束,處理模塊的運(yùn)行。
三、知識(shí)總結(jié)
(1)學(xué)生和教師分別總結(jié)任務(wù)實(shí)施過程中遇到的難點(diǎn)和知識(shí)重點(diǎn)。(2)對(duì)任務(wù)完成時(shí)大多數(shù)學(xué)生犯的錯(cuò)誤和知識(shí)盲點(diǎn)進(jìn)行講解和分析。(3)拓展任務(wù),引導(dǎo)學(xué)生對(duì)現(xiàn)有的程序有什么問題,有哪些點(diǎn)可以進(jìn)行優(yōu)化產(chǎn)生思考。(4)對(duì)游戲還有哪些創(chuàng)新的思考,如滑到石頭、蘋果時(shí),音樂的加入等。
參考文獻(xiàn):
[1]賴建評(píng).基于AppInventor的中職Android課程設(shè)計(jì)[J].科技創(chuàng)新導(dǎo)報(bào),2016,13(8):151-152.
[2]余美華.項(xiàng)目體驗(yàn)式教學(xué)法在計(jì)算機(jī)移動(dòng)開發(fā)類課程教學(xué)中的應(yīng)用[J].產(chǎn)業(yè)與科技論壇,2017,16(5):154-155.