轉(zhuǎn)帖|行業(yè)資訊|編輯:蔣永|2016-09-13 10:50:32.000|閱讀 356 次
概述:隨著越來(lái)越多的公司決定開(kāi)發(fā)自己的移動(dòng)應(yīng)用程序(簡(jiǎn)稱app),他們將面臨選擇app開(kāi)發(fā)框架的問(wèn)題。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
隨著越來(lái)越多的公司決定開(kāi)發(fā)自己的移動(dòng)應(yīng)用程序(簡(jiǎn)稱app),他們將面臨選擇app開(kāi)發(fā)框架的問(wèn)題。
這些公司首先必須要做的是讓程序按照現(xiàn)有的流程運(yùn)行,并且讓用戶能夠通過(guò)手機(jī)操作。而現(xiàn)在的手機(jī)程序充分利用設(shè)備提供的諸多特性后,變的日新月異,這些特性 比如位置服務(wù),推送服務(wù),無(wú)縫數(shù)據(jù)分享等。選擇app開(kāi)發(fā)框架時(shí)最大的問(wèn)題是發(fā)布采用那種形式的app:原生的,Web形式的,還是混合形式(原 生+web)的。
通常,開(kāi)發(fā)原生應(yīng)用程序能帶來(lái)更好的用戶體驗(yàn)。手機(jī)操作系統(tǒng)開(kāi)發(fā)商對(duì)于各自的開(kāi)發(fā)工具投資巨大,并希望以此確保使用該原生語(yǔ)言開(kāi)發(fā)的手機(jī)開(kāi)發(fā)者們能利用好最新的系統(tǒng)特性和平臺(tái)。
但 是,沒(méi)有移動(dòng)開(kāi)發(fā)經(jīng)驗(yàn)的公司可能會(huì)猶豫是否讓他們的開(kāi)發(fā)者學(xué)習(xí)多種語(yǔ)言,來(lái)單獨(dú)開(kāi)發(fā)針對(duì)ios和安卓系統(tǒng)的應(yīng)用程序,因?yàn)橹С植煌到y(tǒng)需要額外的努力。在 有些場(chǎng)景中,當(dāng)公司僅僅需要支持一個(gè)系統(tǒng)或者依賴于集成硬件設(shè)備,比如嵌入式設(shè)備,無(wú)人販?zhǔn)蹤C(jī),收銀機(jī)和一些其他針對(duì)公司特殊問(wèn)題的設(shè)備,那開(kāi)發(fā)原生 app會(huì)成為更好的選擇。
與原生開(kāi)發(fā)對(duì)應(yīng)的是Web應(yīng)用程序,用戶可以直接在手機(jī)瀏覽器中訪問(wèn)該程序。開(kāi)發(fā)者能夠使用他們熟悉的Web技術(shù)構(gòu)建Web應(yīng)用程序,比如Html5,CSS,JavaScript。一個(gè)Web App能夠在多種手機(jī)操作系統(tǒng)上運(yùn)行。此外,HTML5的優(yōu)勢(shì)意味著Web App也能夠做到許多原生App可以做到的事情,比如使用照相機(jī)和地理定位,從Web應(yīng)用程序啟動(dòng)原生應(yīng)用程序。
這些優(yōu)點(diǎn)都非常有吸引力,但是Web App有明顯的短板。他們只支持在少數(shù)特定瀏覽器中給用戶推送消息,登錄狀態(tài)將會(huì)迅速過(guò)期,此外,Web 應(yīng)用程序不能利用到所有最新操作系統(tǒng)的特性,而這些特性中有些十分重要且獨(dú)一無(wú)二,它們使的手機(jī)app有極大的價(jià)值。
由于這些原因,Web App在企業(yè)開(kāi)發(fā)中使用較少。Web App的另一個(gè)問(wèn)題是相對(duì)于原生App來(lái)講使用起來(lái)不夠方便。用戶必須記住如何導(dǎo)航到Web App頁(yè)面,為了下次方便進(jìn)入將網(wǎng)址保存在收藏夾,或者書簽放在手機(jī)桌面上。IT人員能夠使用手機(jī)管理軟件增加這些書簽,但是他們?nèi)匀恍枰啾扔谠鷄pp更多的不同的處理流程。
混合應(yīng)用程序是指在將web app封裝起來(lái),讓其在原生App中運(yùn)行,看起來(lái),似乎是兩全其美。開(kāi)發(fā)這能使用Web語(yǔ)言編寫核心邏輯,并讓它在跨平臺(tái)上運(yùn)行,而用戶接口層使用原生程序來(lái)與設(shè)備交互,使用設(shè)備特性。最后,開(kāi)發(fā)者能夠像使用原生程序一樣管理和發(fā)布混合程序。
混合app可以簡(jiǎn)單的看成是把web頁(yè)面嵌入到原生app里,但它們也可以很復(fù)雜。許多app開(kāi)發(fā)框架允許app開(kāi)發(fā)人員使用基于WEB技術(shù)或其它語(yǔ)言來(lái)編寫代碼,然后根據(jù)不同的移動(dòng)操作系統(tǒng)(mobile OS's)編譯為對(duì)應(yīng)的原生應(yīng)用。一些app開(kāi)發(fā)框架只提供了混合應(yīng)用開(kāi)發(fā)所需的UI,這些UI是使用原始代碼開(kāi)發(fā)且符合操作系統(tǒng)的界面風(fēng)格。
雖然混合開(kāi)發(fā)很流行,但是它的缺點(diǎn)也是非常明顯的。使用一套代碼來(lái)適配多種操作系統(tǒng)意味著開(kāi)發(fā)人員需要做一些折中的方案。比如: iOS 不支持完整的近場(chǎng)通訊, Android 和iOS app有不同的導(dǎo)航風(fēng)格。
在某些情況下,“一次開(kāi)發(fā),到處部署”概念開(kāi)發(fā)的app想要運(yùn)行在不同的平臺(tái)上是需要額外的工作,與只投資于原生app開(kāi)發(fā)(native app development )來(lái)說(shuō)它還是比較容易的。
企業(yè)級(jí)移動(dòng)app需要使用基礎(chǔ)設(shè)施組件如: 推送通知、管理、安全、分析、數(shù)據(jù)同步和連接到企業(yè)數(shù)據(jù)庫(kù)、訂閱 。
有些人認(rèn)為混合app與web app對(duì)企業(yè)app來(lái)說(shuō)很好。另外一些人認(rèn)為用戶體驗(yàn)非常重要,app應(yīng)該利用移動(dòng)操作系統(tǒng)上提供的原生功能。 但不同的應(yīng)用程序、不同情況,需要不同的開(kāi)發(fā)方法和思考。
本文轉(zhuǎn)自
>>查看更多關(guān)于移動(dòng)開(kāi)發(fā)、開(kāi)發(fā)框架的相關(guān)資訊<<
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn