熊亞蒙
摘? ?要:文章設(shè)計(jì)并研究一種以APP Inventor為基礎(chǔ)的高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用,該應(yīng)用以高職院?;A(chǔ)實(shí)驗(yàn)室、學(xué)院專(zhuān)業(yè)實(shí)驗(yàn)室、學(xué)院科研實(shí)驗(yàn)室以及校企合作基地為依托,將各年級(jí)師生作為應(yīng)用對(duì)象,由應(yīng)用層、業(yè)務(wù)層與數(shù)據(jù)層構(gòu)成,在實(shí)現(xiàn)的過(guò)程中,需要對(duì)APP Inventor中服務(wù)器的搭建以及工具的自身完善等技術(shù)難點(diǎn)進(jìn)行攻克,更好應(yīng)用于移動(dòng)應(yīng)用的設(shè)計(jì)以及高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐活動(dòng)的開(kāi)展。
關(guān)鍵詞:APP Inventor;創(chuàng)新創(chuàng)業(yè)實(shí)踐;移動(dòng)應(yīng)用
1? ? 高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用設(shè)計(jì)
高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用應(yīng)當(dāng)以高職院?;A(chǔ)實(shí)驗(yàn)室、學(xué)院專(zhuān)業(yè)實(shí)驗(yàn)室、學(xué)院科研實(shí)驗(yàn)室以及校企合作基地為依托,進(jìn)行層次鮮明、開(kāi)放共享的創(chuàng)新創(chuàng)業(yè)實(shí)踐功能模塊的設(shè)計(jì)。應(yīng)用的各功能模塊分為低、中、高3個(gè)層次,分別以高職院校各年級(jí)的學(xué)生及教師為對(duì)象,各模塊均保證至少有一個(gè)特色鮮明的主題,模塊與模塊之間相互補(bǔ)充與合理銜接。具體地,興趣引入模塊主要對(duì)學(xué)生“走進(jìn)移動(dòng)應(yīng)用”的問(wèn)題加以解決,將學(xué)生的創(chuàng)新創(chuàng)業(yè)興趣激發(fā)出來(lái),對(duì)他們的動(dòng)手習(xí)慣進(jìn)行培養(yǎng),增強(qiáng)其對(duì)相關(guān)功能的認(rèn)知能力。實(shí)踐融合模塊主要解決的是學(xué)生在實(shí)踐過(guò)程中將知識(shí)轉(zhuǎn)化為能力的問(wèn)題,對(duì)學(xué)生的創(chuàng)新創(chuàng)業(yè)意識(shí)進(jìn)行培養(yǎng),強(qiáng)化他們的創(chuàng)新創(chuàng)業(yè)思維及實(shí)踐能力。展提高模塊的功能在于明確創(chuàng)新創(chuàng)業(yè)目標(biāo),培養(yǎng)學(xué)生的綜合素質(zhì)與能力。
2? ? 基于APP Inventor的創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用框架
2.1? App? Inventor的特點(diǎn)
APP Inventor是Google公司研發(fā)并推出的一款可視化、可拖拽的移動(dòng)設(shè)備編程工具,能夠在Android平臺(tái)上構(gòu)建移動(dòng)應(yīng)用,以基于Web的圖形化用戶(hù)界面生成器為支持,進(jìn)行應(yīng)用用戶(hù)界面的設(shè)計(jì),之后與堆積木或拼圖相類(lèi)似,對(duì)“塊”語(yǔ)言進(jìn)行拼接,實(shí)現(xiàn)對(duì)應(yīng)用的定義[1]。
(1)在線開(kāi)發(fā)。APP Inventor具有“在線開(kāi)發(fā)”功能,為設(shè)計(jì)人員提供了隨時(shí)開(kāi)發(fā)的可能,只需進(jìn)行一個(gè)郵箱帳號(hào)的注冊(cè),設(shè)計(jì)人員便可訪問(wèn)APP Inventor服務(wù)器,執(zhí)行對(duì)小軟件的開(kāi)發(fā)操作。
(2)趣味性。大多數(shù)人都堆過(guò)積木,APP Inventor的理念便是利用積木形式進(jìn)行小軟件的開(kāi)發(fā)。設(shè)計(jì)人員只需要將所需要的內(nèi)容拖動(dòng)到工作面板中,經(jīng)過(guò)合理的組合便能實(shí)現(xiàn)相應(yīng)的功能。
(3)簡(jiǎn)單易操作性。之前應(yīng)用較為廣泛的Scratch同樣是運(yùn)用積木塊的形式,具有“零基礎(chǔ)”的優(yōu)點(diǎn),幾分鐘便能將編程學(xué)會(huì)。APP Inventor同樣建立于此種思想之下,它能讓更多的人接觸并參與軟件的開(kāi)發(fā)。只需對(duì)某些組件進(jìn)行拖動(dòng),便可達(dá)到理想的效果。
2.2? 基于App? Inventor的移動(dòng)應(yīng)用技術(shù)架構(gòu)
高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐利用APP Inventor進(jìn)行開(kāi)發(fā)。應(yīng)用開(kāi)發(fā)由上至下,包括應(yīng)用層、業(yè)務(wù)層與數(shù)據(jù)層。
2.2.1? 應(yīng)用層設(shè)計(jì)
APP Inventor的組件由可視化組件與非可視化組件構(gòu)成。在進(jìn)行高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用程序的設(shè)計(jì)之時(shí),可視化組件需用到Button,Image與Label等,其中,Button按鈕負(fù)責(zé)管理師生的登錄信息以及“興趣引入”“實(shí)踐融合”“拓展提高”等模塊與各模塊中對(duì)應(yīng)的內(nèi)容;Image則進(jìn)行頭像等圖案信息的顯示;Label顯示文本,將對(duì)應(yīng)的師生信息及其對(duì)相關(guān)內(nèi)容的點(diǎn)擊簡(jiǎn)要顯示于頭像下方。非可視化組件會(huì)對(duì)Tiny DB,Sound與TextToSpeech等加以應(yīng)用,其中Tiny DB用于相關(guān)數(shù)據(jù)在手機(jī)數(shù)據(jù)庫(kù)中的保存;Sound是一種聲音媒體組件;TextToSpeech亦是媒體組件,可實(shí)現(xiàn)語(yǔ)音輸出文本的功能。
2.2.2? 業(yè)務(wù)層設(shè)計(jì)
業(yè)務(wù)層的設(shè)計(jì)主要是對(duì)創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用中各個(gè)組件的功能進(jìn)行定義。Blocks Editor程序編輯界面,用于編寫(xiě)輸入元件以及輸出元件之間的邏輯程序,即確定將什么信息輸入、采用什么樣的程序進(jìn)行邏輯處理以及生成什么輸出結(jié)果等。
以學(xué)生登錄移動(dòng)應(yīng)用模塊為例,學(xué)生進(jìn)入移動(dòng)應(yīng)用之后,首先會(huì)提示學(xué)生登錄,學(xué)生輸入自己的信息并向服務(wù)器發(fā)出請(qǐng)求,服務(wù)器在接收到學(xué)生的登錄請(qǐng)求之后,會(huì)從照片庫(kù)中讀取學(xué)生的照片,并在移動(dòng)應(yīng)用的客戶(hù)端界面將學(xué)生照片及信息顯示出來(lái)待學(xué)生確認(rèn),自動(dòng)跳轉(zhuǎn)至應(yīng)用主頁(yè)面。
2.3? 數(shù)據(jù)層設(shè)計(jì)
數(shù)據(jù)層是創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用的基礎(chǔ),在移動(dòng)應(yīng)用中對(duì)功能進(jìn)行了不同模塊的分解,運(yùn)用模塊化的方法實(shí)現(xiàn)應(yīng)用的不同功能。為移動(dòng)應(yīng)用實(shí)現(xiàn)流程如圖1所示。
3? ? 應(yīng)用實(shí)現(xiàn)中的技術(shù)難點(diǎn)
APP Inventor操作簡(jiǎn)單,對(duì)學(xué)生通過(guò)移動(dòng)應(yīng)用參與創(chuàng)新創(chuàng)業(yè)實(shí)踐很適用。但是,是否能夠簡(jiǎn)單地將APP Inventor技術(shù)引入高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐活動(dòng)及其移動(dòng)應(yīng)用之中并不肯定,在設(shè)計(jì)移動(dòng)應(yīng)用并開(kāi)展高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐的過(guò)程中,APP Inventor需要攻克以下技術(shù)難點(diǎn)。
3.1? 服務(wù)器的搭建
APP Inventor工具現(xiàn)已推出離線版,只需將離線版安裝至某一服務(wù)器上并發(fā)布出去,通過(guò)對(duì)IP地址或域名地址的訪問(wèn)便可實(shí)現(xiàn)工具的應(yīng)用。但是有一個(gè)限制條件,由于APP Inventor是應(yīng)用于高職院校校內(nèi)的,因此,很多服務(wù)器只限于校內(nèi)訪問(wèn),難以將較大的項(xiàng)目導(dǎo)出,或者在訪問(wèn)過(guò)程中會(huì)有網(wǎng)絡(luò)連接問(wèn)題的出現(xiàn),致使原本已經(jīng)做好的項(xiàng)目難以保存或無(wú)法及時(shí)導(dǎo)出。因此,一個(gè)優(yōu)秀的APP Inventor平臺(tái)服務(wù)器搭建是有一定難度的,另外,訪問(wèn)量的增大亦會(huì)為服務(wù)器帶來(lái)其他問(wèn)題,需要從持久性方面考慮服務(wù)器的維護(hù)。實(shí)際上,服務(wù)器的搭建問(wèn)題是不應(yīng)落實(shí)到高職院校中的,畢竟其需要支付較高的搭建與維護(hù)成本。為了對(duì)APP Inventor的應(yīng)用進(jìn)行大力的推廣,Google公司應(yīng)在國(guó)內(nèi)不同地區(qū)進(jìn)行多臺(tái)服務(wù)器平臺(tái)的設(shè)立,對(duì)當(dāng)前網(wǎng)絡(luò)堵塞以及服務(wù)器癱瘓等問(wèn)題予以解決。
3.2? 工具的自身完善
現(xiàn)在看來(lái),APP Inventor是有十分清晰的結(jié)構(gòu),在進(jìn)行一些小程序的編寫(xiě)時(shí)也非常簡(jiǎn)單。但是如果要編寫(xiě)較大的程序,APP Inventor加載的速度就會(huì)非常慢,甚至有時(shí)會(huì)面臨無(wú)法保存大程序的難題。此外,如果全都用積木的形式將大程序中的代碼堆疊起來(lái),將會(huì)使代碼太多、太亂,有時(shí)若對(duì)某一地方進(jìn)行修改,保存之后很有可能在下次進(jìn)行測(cè)試的時(shí)候,發(fā)現(xiàn)這一修改的地方并沒(méi)有被保存下來(lái)。另外,若一個(gè)程序中有比較多的同類(lèi)型組件,在為它們添加相應(yīng)的事件之時(shí)還需要逐個(gè)地添加,而無(wú)法采用類(lèi)似于循環(huán)代碼的形式一次性將全部組件的事件寫(xiě)完。利用APP Inventor設(shè)計(jì)高職學(xué)生創(chuàng)新創(chuàng)業(yè)實(shí)踐移動(dòng)應(yīng)用,代碼塊拼接的程序是存在一定難度的,若采用程序語(yǔ)言編寫(xiě)可能會(huì)節(jié)省不小功夫。因此,修改之后的APP Inventor并不一定都需要采用代碼塊來(lái)拼接,也可以合理選擇編寫(xiě)一些簡(jiǎn)單的代碼,在采用積木塊與代碼相結(jié)合的方式時(shí)需要對(duì)其適用性進(jìn)行考慮。
[參考文獻(xiàn)]
[1]王慧琚.淺談APP Inventor課堂管理系統(tǒng)設(shè)計(jì)[J].長(zhǎng)春師范大學(xué)學(xué)報(bào),2016(12):44-47.