以下三種方式可算是移動(dòng)應(yīng)用程序開發(fā)工作的主要實(shí)現(xiàn)思路。我們將對(duì)每一種進(jìn)行簡(jiǎn)要介紹,其適用范圍、優(yōu)勢(shì)與短板以及一份與之相對(duì)應(yīng)之開發(fā)工具清單。
原生應(yīng)用程序開發(fā)
在原生應(yīng)用程序開發(fā)機(jī)制當(dāng)中,移動(dòng)應(yīng)用會(huì)專門面向特定移動(dòng)平臺(tái)進(jìn)行編寫,其中包括iOS、Android以及Windows Phone。這類應(yīng)用駐留在移動(dòng)設(shè)備當(dāng)中,而且通常利用由平臺(tái)制造商提供的開發(fā)工具編寫而成。其代碼無法在不同平臺(tái)之間隨意遷移或者重復(fù)使用。
最佳適用范圍
面向消費(fèi)者之應(yīng)用程序
游戲
擁有高強(qiáng)度圖形及多媒體處理量的應(yīng)用程序
優(yōu)勢(shì)
短板
開發(fā)工具
利用HTML 5、CSS以及JavaScript開發(fā)之Web應(yīng)用程序
Web應(yīng)用程序由HTML 5、CSS以及JavaScript構(gòu)建而成。這類應(yīng)用可以通過移動(dòng)設(shè)備上的瀏覽器進(jìn)行訪問且具備交互特性,但其無法訪問移動(dòng)設(shè)備上的聯(lián)系人列表以及傳感器等內(nèi)置機(jī)制。這類應(yīng)用只需一次開發(fā)并部署在Web服務(wù)器之上即可接受各類平臺(tái)用戶的使用。
最佳適用范圍
企業(yè)與企業(yè)以及企業(yè)與員工間所使用的內(nèi)部服務(wù)及資源應(yīng)用。
優(yōu)勢(shì)
短板
開發(fā)工具
任何一款能夠利用HTML 5、JavaScript以及CSS構(gòu)建Web頁(yè)面的開發(fā)工具都能夠開發(fā)移動(dòng)Web應(yīng)用。其中部分高人氣工具包括:
AngularJS ,一款由谷歌負(fù)責(zé)維護(hù)的開源Web應(yīng)用程序框架
Ember.js ,一款開源JavaScript Web應(yīng)用程序開發(fā)框架
React ,一套開源JavaScript庫(kù),由Facebook及其它多家廠商負(fù)責(zé)構(gòu)建及維護(hù)
Backbone.js ,一套JavaScript庫(kù)
JQuery ,一套JavaScript庫(kù)
Meteor ,一款開源JavaScript框架
Bootstrap與Bootstrap Javascript ,一套被廣泛視為”移動(dòng)優(yōu)先“型的CSS框架以及一套強(qiáng)調(diào)“響應(yīng)式”特性的框架
混合應(yīng)用程序
混合應(yīng)用程序首先利用HTML 5、CSS以及JavaScript構(gòu)建成形,而后由打包工具將其轉(zhuǎn)化為能夠在不同移動(dòng)平臺(tái)之上運(yùn)行的原生應(yīng)用程序。此類應(yīng)用傾向于將原生應(yīng)用與Web應(yīng)用的優(yōu)勢(shì)加以結(jié)合,在運(yùn)用標(biāo)準(zhǔn)Web開發(fā)資源的同時(shí)允許應(yīng)用成果以原生方式運(yùn)行在各類設(shè)備之上。
最佳適用范圍
企業(yè)與企業(yè)以及企業(yè)與員工類應(yīng)用程序
企業(yè)內(nèi)部服務(wù)及資源應(yīng)用
希望在不同平臺(tái)之上部署原生應(yīng)用的企業(yè)用戶
優(yōu)勢(shì)
短板
開發(fā)工具
這類應(yīng)用程序擁有更為廣泛的適用開發(fā)工具,從將現(xiàn)有Web代碼轉(zhuǎn)化為原生應(yīng)用的工具到完整的開發(fā)環(huán)境可謂無所不包。以下列出的僅僅是其中的一小部分。
Apache Cordova ,一套開源平臺(tái),能夠?qū)⒗肏TML 5、CSS以及JavaScript構(gòu)建的移動(dòng)Web應(yīng)用轉(zhuǎn)化為原生移動(dòng)應(yīng)用
Adobe PhoneGap,Adobe推出的Apache Cordova的一套衍生方案
Alpha Anywhere,這套開發(fā)環(huán)境允許用戶構(gòu)建Web應(yīng)用程序并將其作為原生應(yīng)用加以部署,其對(duì)編程經(jīng)驗(yàn)要求不高、但亦允許高水平程序員充分發(fā)揮自己的編程技能
Ionic Framework:這套框架專注于構(gòu)建用戶界面,其能夠與AngularJS以及Cordova相配合以實(shí)現(xiàn)Web應(yīng)用程序向原生應(yīng)用之轉(zhuǎn)化
OutSystems:允許用戶利用可視化工具構(gòu)建Web應(yīng)用與原生應(yīng)用
Kony:這套平臺(tái)提供一系列工具選項(xiàng),幫助用戶構(gòu)建面向不同平臺(tái)類型的原生應(yīng)用程序
Xamarin:用于構(gòu)建原生應(yīng)用程序的跨平臺(tái)開發(fā)平臺(tái)
Appcelerator:這套跨平臺(tái)開發(fā)方案允許用戶利用JavaScript編寫應(yīng)用,而后以此為基礎(chǔ)構(gòu)建原生應(yīng)用程序
原文標(biāo)題:Native vs. HTML5 vs. hypid mobile apps: The pros and cons
聯(lián)系客服