譚晏松
摘要:HTML5的出現(xiàn)讓我們看到了一種全新的混合開發(fā)模式(HybridAPP),及早將這種混合開發(fā)模式應(yīng)用于高校的移動(dòng)應(yīng)用開發(fā)專業(yè),可以極大地提高學(xué)生移動(dòng)應(yīng)用開發(fā)的能力。文中首先介紹了移動(dòng)應(yīng)用開發(fā)技術(shù)的現(xiàn)狀以及HTML5的出現(xiàn)對(duì)于開發(fā)技術(shù)的影響,然后分析當(dāng)前的開發(fā)模式,以及各自的優(yōu)缺點(diǎn),最后探討了混合開發(fā)模式(HybridAPP)對(duì)于移動(dòng)應(yīng)用開發(fā)專業(yè)的作用。
關(guān)鍵詞:HTML5;Native APP;Hybrid APP;混合跨平臺(tái)
一、移動(dòng)應(yīng)用開發(fā)技術(shù)的現(xiàn)狀
當(dāng)前社會(huì)由于智能設(shè)備的高速發(fā)展,對(duì)于智能手機(jī)的開發(fā)人員的需求也越來(lái)越大,但是大量的市場(chǎng)需求并沒有帶動(dòng)移動(dòng)應(yīng)用開發(fā)專業(yè)的就業(yè)率上升,產(chǎn)生這種狀況的因素就是移動(dòng)應(yīng)用開發(fā)專業(yè)培養(yǎng)計(jì)劃滯后,由于移動(dòng)應(yīng)用開發(fā)專業(yè)是一個(gè)新興的專業(yè),發(fā)展時(shí)間并不長(zhǎng),積累的各種資源都比較少,對(duì)于各種系統(tǒng)的研究并不透徹,以至于教授的開發(fā)技術(shù)到了學(xué)生畢業(yè)的時(shí)候就顯得過(guò)于老舊,所以學(xué)生的就業(yè)率一直跟不上。如何讓高校培養(yǎng)的學(xué)生更好地適應(yīng)社會(huì)的需求,這一直是高校教育的目標(biāo)。我們?cè)诳紤]移動(dòng)專業(yè)培養(yǎng)之前要盡量把握該專業(yè)的發(fā)展趨勢(shì),以保證學(xué)生在畢業(yè)的時(shí)候能用得上學(xué)校傳授的知識(shí)和技術(shù)。
二、HTML5對(duì)移動(dòng)應(yīng)用開發(fā)的影響
HTML5的出現(xiàn),是近十年來(lái)Web開發(fā)標(biāo)準(zhǔn)最巨大的飛躍。它與以前的版本不一樣,不是以展現(xiàn)WEB內(nèi)容為主,它的作用就是將Web帶入一個(gè)成熟的綜合應(yīng)用平臺(tái),在這個(gè)平臺(tái)上,視頻、音頻、圖象、動(dòng)畫,以及同電腦的交互都被標(biāo)準(zhǔn)化。所以HTML5是近十年來(lái) Web標(biāo)準(zhǔn)最巨大的飛躍。盡管 HTML5的完善還有很長(zhǎng)的路要走,但HTML5正在改變Web。
如果只利用HTML5技術(shù)進(jìn)行移動(dòng)應(yīng)用開發(fā)還是有一些缺陷的,在實(shí)現(xiàn)和應(yīng)用方面還不能達(dá)到原生開發(fā)的效果,但是現(xiàn)在有一種方式將HTML5技術(shù)與部分本地原生API開發(fā)結(jié)合起來(lái),形成一種以HTML5為基礎(chǔ)的混合移動(dòng)開發(fā)模式,這種模式開發(fā)的移動(dòng)應(yīng)用程序可以在移動(dòng)終端的各種平臺(tái)上安裝和使用,另外基于HTML5的混合移動(dòng)應(yīng)用開發(fā)模式在維護(hù)方面也具有非常大的優(yōu)勢(shì),由于是采用集中式的發(fā)布開發(fā),在應(yīng)用的升級(jí)和維護(hù)的時(shí)候,只需要在服務(wù)器端針對(duì)相應(yīng)的版本進(jìn)行升級(jí)和維護(hù),不需要更新每個(gè)客戶端?;贖TML5混合移動(dòng)應(yīng)用開發(fā)還能夠節(jié)約人力資源,提高相關(guān)企業(yè)的經(jīng)濟(jì)性。當(dāng)然,基于HTML5混合移動(dòng)應(yīng)用開發(fā)技術(shù)還創(chuàng)造了更為新穎的盈利方式。
三、移動(dòng)應(yīng)用開發(fā)模式研究
當(dāng)前移動(dòng)應(yīng)用開發(fā)平臺(tái)的多樣性,是移動(dòng)開發(fā)的一大難點(diǎn),當(dāng)前手機(jī)的操作系統(tǒng)有Android、iOS、Symbian、Windows Phone等多種,然而當(dāng)前的移動(dòng)應(yīng)用開發(fā)專業(yè)大多都是只注重其中一兩種平臺(tái)的開發(fā),所以學(xué)生的就業(yè)適應(yīng)能力就相當(dāng)有限,而且在這些平臺(tái)上作出漂亮的UI界面也是相當(dāng)?shù)睦щy,但是這些都可以在HTML5出現(xiàn)之后得到解決。以前的移動(dòng)開發(fā)主要以原生(Native APP)為主,但是出現(xiàn)HTML5之后,就發(fā)展出現(xiàn)了網(wǎng)頁(yè)開發(fā)模式(WebAPP)和混合開發(fā)模式(HybridAPP)。
開發(fā)模式分為:(一)Native APP(原生開發(fā)模式)是基于本地操作系統(tǒng)運(yùn)行的,它的優(yōu)點(diǎn)在于能夠調(diào)用移動(dòng)端的硬件設(shè)備資源,用戶交互體驗(yàn)較好。但是為了能在多個(gè)版本的手機(jī)平臺(tái)上運(yùn)行則要開發(fā)多次,技術(shù)門檻高,開發(fā)成本高,不易移植到其他平臺(tái)。(二)Web APP(網(wǎng)頁(yè)開發(fā)模式)利用移動(dòng)Web 開發(fā)技術(shù)如 HTML5、CSS、JavaScript等,其本質(zhì)上來(lái)說(shuō)是針對(duì)移動(dòng)智能終端開發(fā)的Web站點(diǎn),訪問(wèn)時(shí)從云端獲取數(shù)據(jù),因而具有跨平臺(tái)的特性,開發(fā)成本低。但無(wú)法調(diào)用終端硬件設(shè)備,用戶交互體驗(yàn)差。(三)Hybrid APP(混合開發(fā)模式)介于Native APP和Web APP之間,主要以JS+Native兩者相互調(diào)用為主,從開發(fā)層面上實(shí)現(xiàn)“一次開發(fā),多處運(yùn)行”的機(jī)制,實(shí)現(xiàn)了跨平臺(tái)開發(fā),結(jié)合了NativeAPP良好用戶體驗(yàn)和Web APP使用HTML5跨平臺(tái)開發(fā)、低成本的優(yōu)勢(shì)。
從目前的高校移動(dòng)應(yīng)用開發(fā)專業(yè)的設(shè)置來(lái)看,主要是以蘋果的IOS和Google的安卓系統(tǒng)為主流,盡管WebAPP開發(fā)模式能夠?qū)崿F(xiàn)跨平臺(tái),但是由于使用效果不如Native APP的效果好,所以大多為輔助手段。其他的移動(dòng)操作系統(tǒng),比如微軟的黑莓等等絕大部分移動(dòng)應(yīng)用專業(yè)都沒有涉及,這些主流的移動(dòng)開發(fā)之間相互不兼容,而且沒有一套標(biāo)準(zhǔn)的接口去實(shí)現(xiàn)跨平臺(tái)開發(fā),所以開發(fā)難度,開發(fā)速度,以及學(xué)習(xí)過(guò)程都是十分痛苦的過(guò)程,針對(duì)每一個(gè)系統(tǒng),需要各自對(duì)應(yīng)的框架開發(fā),耗費(fèi)了學(xué)生更多的精力與時(shí)間,也沒有得到更好的學(xué)習(xí)效果,這也是導(dǎo)致高校的移動(dòng)專業(yè)的學(xué)生就業(yè)難的根本原因。所以跨平臺(tái)的Hybrid APP模式的出現(xiàn),也極大地推動(dòng)了移動(dòng)專業(yè)教學(xué)方向的變革。
四、Hybrid APP的優(yōu)勢(shì)和缺點(diǎn)
作為一種新興的移動(dòng)開發(fā)模式,Hybrid模式有很多優(yōu)點(diǎn):(一)Hybrid模式支持跨平臺(tái)操作。這種基于HTML5 為基礎(chǔ)的混合開發(fā)模式繼承了前期HTML的優(yōu)勢(shì),開發(fā)簡(jiǎn)單,可擴(kuò)展性強(qiáng)而且支持系統(tǒng)跨平臺(tái)使用。(二)Hybrid模式利用HTML5可以實(shí)現(xiàn)離線緩存。HTML5中的Web Storage API可以看做是加強(qiáng)版的cookie,不受數(shù)據(jù)大小限制,有更好的彈性以及架構(gòu),可以將數(shù)據(jù)寫入到本機(jī)的ROM中,還可以在關(guān)閉瀏覽器后再次打開時(shí)恢復(fù)數(shù)據(jù),以減少網(wǎng)絡(luò)流量。(三)Hybrid模式利用HTML5可以實(shí)現(xiàn)音頻視頻自由嵌入,讓多媒體形式更為靈活。這種相對(duì)于Native APP原生開發(fā)方式來(lái)說(shuō),Native APP模式對(duì)于文字和音視頻混排的多媒體內(nèi)容處理相對(duì)麻煩,需要拆分開文字、圖片、音頻、視頻,解析對(duì)應(yīng)的URL并分別用不同的方式處理。Hybrid模式在這個(gè)方面完全不受限制,可以完全放在一起進(jìn)行處理。(四)Hybrid模式可以實(shí)現(xiàn)地理定位,隨時(shí)隨地分享位置。充分發(fā)揮移動(dòng)設(shè)備對(duì)定位上的優(yōu)勢(shì),推動(dòng)LBS應(yīng)用發(fā)展。(五)Hybrid模式可以降低的開發(fā)及維護(hù)成本,使頁(yè)面變得更小,減少了用戶不必要的支出;而且,性能更好使耗電量更低,而且方便升級(jí),打開即可使用最新版本,免去重新下載升級(jí)包的麻煩,使用過(guò)程中就直接更新了離線緩存。
Hybrid模式當(dāng)然作為一種開發(fā)模式,并不是一個(gè)萬(wàn)能的開發(fā)模式,它也有自己的弱點(diǎn),由于采用的是網(wǎng)絡(luò)發(fā)布模式,它但仍受限于技術(shù),網(wǎng)速,等等很多因素。尚不完美。但是我們相信在硬件高速發(fā)展的當(dāng)前社會(huì),這些硬件因素會(huì)很快得到解決。
五、Hybrid APP的代表開發(fā)軟件AppCan
高校的軟件開發(fā)教育多與具體的開發(fā)軟件有關(guān),在國(guó)內(nèi)的Hybrid APP開發(fā)模式的軟件比較有名的,例如AppCan開發(fā)軟件,它是國(guó)內(nèi)混合開發(fā)模式中發(fā)展較快的,它提供了基于HTML5技術(shù)的跨平臺(tái)移動(dòng)應(yīng)用快速開發(fā)一體化解決方案。而且利用AppCan可以快速的開發(fā)出界面美觀的跨平臺(tái)移動(dòng)應(yīng)用,而且AppCan還封裝了原生UI,AppCan開發(fā)的應(yīng)用用戶體驗(yàn)效果更接近原生的用戶體驗(yàn)。 它支持HTML5和CSS3,很好的解決了動(dòng)畫渲染的速度比較慢,反應(yīng)遲緩等問(wèn)題,是國(guó)內(nèi)HyBrid App應(yīng)用研發(fā)的帶領(lǐng)者和開拓者。
六、結(jié)語(yǔ)
由于HTML5的出現(xiàn),帶來(lái)了開發(fā)模式上的一些變更。對(duì)于移動(dòng)開發(fā)這種新興的專業(yè),由于技術(shù)新穎,更新比較快,我們必須更好的掌握其發(fā)展方向,更快的制定相應(yīng)的教學(xué)計(jì)劃,這樣才能使我們培養(yǎng)的學(xué)生能夠適應(yīng)當(dāng)前社會(huì)的需求。在技術(shù)上,由于HTML5 的出現(xiàn)在一定程度上能解決了原生開發(fā)的學(xué)習(xí)難度和開發(fā)難度,提出一種更適宜的開發(fā)模式。但是,當(dāng)前的HTML5并不完善,Hybrid APP開發(fā)模式也需要不斷地改進(jìn)。每一種語(yǔ)言和開發(fā)模式都需要一個(gè)完善的過(guò)程,但是隨著科技的進(jìn)步, 基于HTML5技術(shù)的Hybrid APP開發(fā)模式肯定是對(duì)移動(dòng)信息服務(wù)帶來(lái)的積極作用是巨大的。
【參考文獻(xiàn)】
[1]陳勇.WebApp 現(xiàn)狀分析與展望[J].行業(yè)觀察,2012(07).
[2]周森鵬,陸正球.基于 Android 平臺(tái)的校園掌中行設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī),2014(11).