◆侯憲忠
(營口職業(yè)技術(shù)學院 遼寧 115000)
高職院校基于AppCan平臺的移動互聯(lián)教學研究
◆侯憲忠
(營口職業(yè)技術(shù)學院 遼寧 115000)
隨著移動互聯(lián)網(wǎng)技術(shù)的發(fā)展,在各高職院校中計算機相關(guān)專業(yè)的課程中都加入了移動互聯(lián)軟件開發(fā)的課程。這些課程對于學生的編程基礎(chǔ)要求較高,在基礎(chǔ)知識部分學習過程中掉隊的學生較多。本文就基于AppCan移動平臺進行移動互聯(lián)應(yīng)用開發(fā)代替原生開發(fā)教學進行了研究和探討。
AppCan;Ajax;JSON
本文利用了AppCan平臺來代替原生的安卓與IOS開發(fā)課程,使課程難度降低并且可以更快速的完成移動互聯(lián)應(yīng)用的開發(fā)。
Hybrid混合應(yīng)用開發(fā)是指同時采用網(wǎng)頁語言與程序語言進行混合應(yīng)用開發(fā),由AppCan所開發(fā)出的移動應(yīng)用已經(jīng)非常接近原生的移動應(yīng)用,但與Web應(yīng)用還是有區(qū)別的。在開發(fā)的過程中大量使用了HTML與JavaScript語言,這就意味著這種開發(fā)模式大大的降低了技術(shù)難度、開發(fā)周期與開發(fā)成本,同時也大大的降低了使用者的門檻。Hybrid混合應(yīng)用開發(fā)兼具了Native App與Web App兩者的諸多優(yōu)點。
AppCan的個人版是免費的,不會增加任何的使用成本與教學成本。其編碼主要使用的語言有HTML5、CSS3與JavaScript,還需要任意一種Web編程語言。使用其內(nèi)置的AppCan IDE集成開發(fā)工具、在線編譯系統(tǒng)以及云端打包器等,AppCan可以快速生成Android、iOS、Windows Phone平臺上的本地App。

圖1 生成過程
HTML5與CSS3對于高職學生是可以掌握的,即使掌握的不全面也會有大量的資料或例子可以查閱。AppCan的界面部分就是由HTML5與CSS3完成的。因此界面的設(shè)計較原生的安卓界面設(shè)計要容易的多。AppCan的IDE中集成了很多免費的界面模板,這些模板同時也為界面的設(shè)計提供了相當多的參考。學生也可使用DreamWeaver等設(shè)計工具自行設(shè)計界面。
JavaScript對于AppCan開發(fā)來說起著承前啟后作用。它可以通過Ajax技術(shù)將數(shù)據(jù)打包發(fā)送給服務(wù)器端,也可以將服務(wù)器端的處理結(jié)果解析后,將數(shù)據(jù)放置到頁面的相應(yīng)位置上。AppCan封裝了相當多的函數(shù)供界面開發(fā)使用。由于是國產(chǎn)平臺,所有其SDK文檔也是中文的,這對于英文水平有限的高職學生而言方便多了。AppCan中常用的功能模塊如下:
1.1 本地存儲LocStorage
在HTML5中的Web 存儲形式有以下兩種:sessionStorage與localStorage。無論哪種方式都是以鍵值對的形式存儲數(shù)據(jù)信息的。AppCan對于HTML5的Web Storage進行了再封裝故直接使用AppCan所提供的函數(shù)就可以方便的進行本地存儲。
1.2 窗口模塊Window與浮動窗口模塊Frame
窗口的作用是用來實現(xiàn)應(yīng)用中多窗口機制的最基本單元,它的作用與原生安卓中的Activity一樣。但要比原生安卓中的Activity使用起來方便快捷很多。在一個主窗口之中可以有任意多個浮動窗口Frame,也就是說浮動窗口是在主窗口的內(nèi)部的。當主窗被關(guān)閉的時候,這個主窗口內(nèi)部所有浮動窗口也會自動關(guān)閉。
1.3 網(wǎng)絡(luò)請求Request
該請求的核心技術(shù)為Ajax技術(shù),AppCan對其進行更深層次的封裝。它以Ajax的形式發(fā)送請求,由服務(wù)端接收這個請求,之后服務(wù)端將處理得到j(luò)son數(shù)據(jù)發(fā)送回請求頁,請求頁中由JavaScript對Json進行解析。
1.4 Listview列表組件
列表組件是根據(jù)AppCan 布局框架對數(shù)據(jù)列表進行封裝的JS對象,通過css樣式的配合,可以快速完成列表控件的開發(fā)。其數(shù)據(jù)都是由Json類型數(shù)據(jù)提供。
1.5 Slider圖片輪播組件與Tab選項卡組件
兩個組件都是根據(jù)AppCan 布局框架對圖片輪播與Tab選項卡所封裝的JS對象,通過css樣式的配合,可以相就功能界面的開發(fā)。
對于原有已經(jīng)成型的教師團隊調(diào)整非常小,AppCan中每一個技術(shù)環(huán)節(jié)都是原有課程體系中的一部分,如HTML,Css,JavaScript,Web編程等。原有師資配備可以直接保留,原HTML、Css部分的課程體系不變,只是在頁面設(shè)計的時候要按照后機分辨率進行調(diào)整。JavaScript與JQuery的教學需在原有基礎(chǔ)上加強,有針對性的對AppCan包提供的常用函數(shù)與寫法進行強化。Web編程方面相對來說有了一定的簡化,因為所有的視圖頁面不需要任何的HTML內(nèi)容,它們所需要的僅是將數(shù)據(jù)處理成的JSON。
2.1 AppCan平臺的技術(shù)前提
雖然AppCan的技術(shù)難度比原生的安卓、IOS開發(fā)低,但是學好這門技術(shù)也是需要一定的技術(shù)前提的,只不過這些技術(shù)前提與學生之前學過的技術(shù)差別不大,更容易掌握而以。AppCan界面的搭建都是由html完成的,在AppCan開發(fā)中,所謂的界面其實就是常見的html頁面。HTML如果沒有Css樣式去修飾很難保證統(tǒng)一的頁面風格。HTML、CSS、JavaScript三者的關(guān)系非常緊密。如果說頁面是一間房子,那么其中的HTML元素就如同磚、木、土、鋼、水泥、沙子等各種材料,CSS就如同讓房子看起來像怎樣的設(shè)計規(guī)范或者圖紙,JavaScript就是用來調(diào)整用CSS規(guī)范建成的房子的各個已經(jīng)就位的元素,讓它們能夠靈活地移動或變化,比如控制一扇門的開與關(guān),把窗簾從一邊移動另一邊等等。Web開發(fā)技術(shù)對AppCan來說只是執(zhí)行業(yè)務(wù)操作并對界面以JSON的形式提供數(shù)據(jù),它是整個技術(shù)前提中相對較為復雜的一塊,它除了Web操作方面還要對數(shù)據(jù)庫、SQL語句等有一定的了解才可以,但該技術(shù)通常是軟件專業(yè)必備的課程。
2.2 課程與就業(yè)
在當今高度競爭的環(huán)境下,各中小軟件企業(yè)都會對企業(yè)的技術(shù)方向有所調(diào)整,在軟件企業(yè)的一個項目團隊中,很難找到同時具備安卓與IOS兩種開發(fā)能力的員工。而AppCan的特點決定了它是可以跨平臺使用的,移動端開發(fā)大大的降低了開發(fā)技術(shù)難度,AppCan的開發(fā)人員同樣可以大大降低軟件企業(yè)的開發(fā)成本。高職的學生掌握AppCan開發(fā)技術(shù)對于他們的實習及就業(yè)的幫助是非常大的。同時AppCan的學習過程中,有一些必備的技術(shù)前提,這些技術(shù)同樣可以成為學生實習及就業(yè)的砝碼,所以實習與就業(yè)還可以輻射出一些其它崗位,如前臺美工,Web應(yīng)用開發(fā)等。
AppCan使用簡單,學生只需要在掌握Web前臺頁面設(shè)計的同時,再掌握一門Web開發(fā)語言即可,如Jsp、PHP等。Web開發(fā)語言這一塊并不需要掌握的太深,因為這些Web開發(fā)語言所涉及的頁面沒有任何Html標記元素,只是將服務(wù)器端處理的結(jié)果以json的數(shù)據(jù)形式響應(yīng),而后由JavaScript將這個JSON解析出的數(shù)據(jù)放置到AppCan頁面的相應(yīng)位置。原理簡單,降低了開發(fā)的門檻,節(jié)約了大量的開成本,同時對于高職學生的教學課程體系有著承上啟下的作用。學生易掌握,教師易備課,企業(yè)易用,無論從哪個角度來看,該項技術(shù)都非常適合在高職院校推廣。