朱安平
摘要
在本文中首先分析了當(dāng)前移動(dòng)電子設(shè)備的發(fā)展前景,針對(duì)當(dāng)前較為流行的Native APP開(kāi)發(fā)模式、Web APP開(kāi)發(fā)模式、Hybrid App開(kāi)發(fā)模式和React Native App開(kāi)發(fā)模式進(jìn)行了較為深入的研究,包括其自身的優(yōu)勢(shì)和劣勢(shì)以及開(kāi)發(fā)環(huán)境,其中React Native開(kāi)發(fā)模式是重點(diǎn)研究的對(duì)象。
【關(guān)鍵詞】移動(dòng)APP開(kāi)發(fā)模式 Native APP開(kāi)發(fā)模式 Web APP開(kāi)發(fā)模式 Hybrid App開(kāi)發(fā)模式 React Native App開(kāi)發(fā)模式
1 移動(dòng)電子設(shè)備的發(fā)展前景
手機(jī)可以說(shuō)是現(xiàn)在人手一部的必備出行用具,從諾基亞、摩托羅拉,再到現(xiàn)在的蘋(píng)果手機(jī),可以說(shuō)智能電子設(shè)備給人們的生活帶來(lái)了翻天覆地的變化。我們使用手機(jī)在各地商場(chǎng)進(jìn)行消費(fèi),足不出戶(hù)就能購(gòu)買(mǎi)各類(lèi)產(chǎn)品,使用虛擬設(shè)備可以看盡名山大川,手機(jī)的重要性已經(jīng)可以和身份證相媲美。在智能移動(dòng)設(shè)備規(guī)模不斷膨脹的今天,移動(dòng)APP的開(kāi)發(fā)者也獲得了前所未有的機(jī)遇,身價(jià)也是水漲船高。為了給人們提供更優(yōu)質(zhì)的電子服務(wù),程序開(kāi)發(fā)者要不斷完善移動(dòng)APP的開(kāi)發(fā)模式,不斷提升自身的技術(shù)水平,才能夠充盈當(dāng)前的電子市場(chǎng)。目前較為流行的移動(dòng)APP開(kāi)發(fā)模式主要分為:Native APP、Web APP和Hybrid APP。
2 當(dāng)前流行的四種移動(dòng)APP開(kāi)發(fā)模式
當(dāng)前移動(dòng)APP的開(kāi)發(fā)模式主要分為原生應(yīng)用開(kāi)發(fā)、移動(dòng)網(wǎng)頁(yè)應(yīng)用開(kāi)發(fā)、Native APP和Web APP混合開(kāi)發(fā)、以及基于React Native框架的Java Script語(yǔ)言開(kāi)發(fā)的類(lèi)原生應(yīng)用。四類(lèi)開(kāi)發(fā)模式擁有自身獨(dú)特的特點(diǎn),占據(jù)著當(dāng)前移動(dòng)設(shè)備的主要市場(chǎng)。接下來(lái)針對(duì)這四類(lèi)開(kāi)發(fā)模式進(jìn)行詳細(xì)的分析:
2.1 Native APP開(kāi)發(fā)模式
Native APP也被稱(chēng)為原生應(yīng)用開(kāi)發(fā)模式,主要針對(duì)的是本地的應(yīng)用開(kāi)發(fā),按照操作系統(tǒng)的不同主要?jiǎng)澐譃閮深?lèi),一是針對(duì)Android平臺(tái)進(jìn)行的Java語(yǔ)言開(kāi)發(fā),二是基于iOS平臺(tái)的Swift語(yǔ)言開(kāi)發(fā)。
Native APP是一種優(yōu)勢(shì)和劣勢(shì)并存的開(kāi)發(fā)模式,優(yōu)勢(shì)在于具有執(zhí)行速度快、依賴(lài)網(wǎng)絡(luò)少、良好的用戶(hù)體驗(yàn)、界面動(dòng)畫(huà)感強(qiáng)的諸多特點(diǎn),程序開(kāi)發(fā)者可以簡(jiǎn)便的調(diào)用操作系統(tǒng)提供的各類(lèi)功能,例如:信息推送、攝像頭調(diào)用、讀取通訊錄等操作。主要的劣勢(shì)為:具有較長(zhǎng)的開(kāi)發(fā)周期、學(xué)習(xí)成本高、無(wú)法實(shí)現(xiàn)跨平臺(tái)開(kāi)發(fā)、繁瑣的版本升級(jí)等,這在一定程度上會(huì)影響Native APP開(kāi)發(fā)模式的用戶(hù)使用量。
2.2 Web APP開(kāi)發(fā)模式
Web APP主要是針對(duì)移動(dòng)網(wǎng)頁(yè)進(jìn)行開(kāi)發(fā),基于傳統(tǒng)的Web開(kāi)發(fā)模式以及HTML、CSS等技術(shù)對(duì)移動(dòng)端的網(wǎng)頁(yè)進(jìn)行開(kāi)發(fā),在手機(jī)移動(dòng)端的瀏覽器上進(jìn)行執(zhí)行和瀏覽。Web APP主要有以下優(yōu)點(diǎn):
(1)知識(shí)體系的開(kāi)發(fā)方式?jīng)]有發(fā)生較大的變化,初級(jí)的網(wǎng)頁(yè)開(kāi)發(fā)人員也可以很快上手進(jìn)行開(kāi)發(fā);
(2)網(wǎng)頁(yè)是跨平臺(tái)的,不再受限于兩類(lèi)不同的操作系統(tǒng);
(3)Web APP運(yùn)營(yíng)升級(jí)的方式十分簡(jiǎn)單,在網(wǎng)頁(yè)上就可以對(duì)其進(jìn)行代碼修改,用戶(hù)不需要任何多余的操作就可以進(jìn)行升級(jí)和使用。
凡事都有兩面性,Web APP的開(kāi)發(fā)模式也是如此,而且還有很多缺陷無(wú)法彌補(bǔ),例如Web APP過(guò)于依賴(lài)網(wǎng)絡(luò),一旦離開(kāi)了網(wǎng)絡(luò),任何功能均無(wú)法實(shí)現(xiàn),這種基于瀏覽器的開(kāi)發(fā)模式在沒(méi)有網(wǎng)絡(luò)的支持下,用戶(hù)無(wú)法得到良好的功能體驗(yàn)。
2.3 Hybrid App開(kāi)發(fā)模式
Hybrid App開(kāi)發(fā)模式是一種混合的移動(dòng)APP開(kāi)發(fā)模式,有機(jī)的結(jié)合了Native APP和Web APP兩種開(kāi)發(fā)模式,通過(guò)使用原生語(yǔ)言,Web View可以簡(jiǎn)單快捷的顯示在網(wǎng)頁(yè)上。
Hybrid App開(kāi)發(fā)模式通過(guò)有機(jī)的結(jié)合Native APP和Web APP兩種開(kāi)發(fā)模式,彌補(bǔ)了二者之間的不足之處,可以實(shí)現(xiàn)移動(dòng)APP的快捷開(kāi)發(fā)。一旦需要修改網(wǎng)頁(yè)的內(nèi)容,就可以通過(guò)服務(wù)器的修改實(shí)現(xiàn)整體功能的跨平臺(tái)。通過(guò)兩種開(kāi)發(fā)模式的有機(jī)結(jié)合,用戶(hù)可以獲得良好的體驗(yàn)感,移動(dòng)終端的功能和性能大大的滿足了用戶(hù)的需求,人們?cè)絹?lái)越喜歡這種折中方式的開(kāi)發(fā)模式。當(dāng)前無(wú)論是微信平臺(tái)還是騰訊QQ,都在沿用這種開(kāi)發(fā)模式,從各個(gè)方面滿足不同的用戶(hù)需求。
2.4 React Native App開(kāi)發(fā)模式
React Native App是采用React Native框架開(kāi)發(fā)的跨平臺(tái)移動(dòng)應(yīng)用。目前支持最流行的兩大移動(dòng)平臺(tái)——iOS和Android。React Native App開(kāi)發(fā)模式使用Java Script、CSS和類(lèi)似HTML的JSX進(jìn)行開(kāi)發(fā),這個(gè)框架的原理是基于網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)并利用Java Script語(yǔ)言與兩大平臺(tái)上的原生語(yǔ)言Java和Objective-C進(jìn)行交互,互相調(diào)用,從而達(dá)到使用Java Script來(lái)寫(xiě)原生應(yīng)用的目的。React Native App存在著原生模塊和Java Script模塊,原生模塊是一個(gè)或多個(gè)線程,Java Script模塊只是一個(gè)單線程與原生模塊異步執(zhí)行。程序最開(kāi)始執(zhí)行是在原生模塊中,之后原生模塊會(huì)調(diào)用Java Script模塊,程序員把程序代碼用Java Script語(yǔ)言寫(xiě)在Java Script模塊中,Java Script代碼由手機(jī)上的JS解釋器執(zhí)行。React Native內(nèi)封裝了原生的iOS組件和Android
組件可在兩大平臺(tái)上很好的適配,并且利用Virtual DOM方式更好的渲染UI組件,再加上diff算法獲得UI組件在事件響應(yīng)時(shí)需要更新的部分,極大地提高了React Native App的性能,使其能與原生程序媲美。
3 結(jié)束語(yǔ)
在本文中主要探討了當(dāng)前較為流行的四種移動(dòng)APP開(kāi)發(fā)模式,這幾類(lèi)模式都存在著自身獨(dú)有的優(yōu)勢(shì)和一定的劣勢(shì),程序開(kāi)發(fā)人員在實(shí)際的開(kāi)發(fā)中要善于選擇,盡可能多的節(jié)約開(kāi)發(fā)成本。這些移動(dòng)APP開(kāi)發(fā)模式正在不斷的進(jìn)行完善,相信在接下來(lái)的日子里會(huì)不斷克服自身的缺點(diǎn),帶給用戶(hù)更好的體驗(yàn)感。
參考文獻(xiàn)
[1]楊毅.移動(dòng)APP開(kāi)發(fā)模式探討[J].福建電腦,2014(06):86-87.
[2]黃悅深.基于HTML5的移動(dòng)Web APP開(kāi)發(fā)[J].圖書(shū)館雜志,2014(07):72-76.