更新時(shí)間:2022年04月29日16時(shí)51分 來源:傳智教育 瀏覽次數(shù):
移動(dòng)App即移動(dòng)設(shè)備上的應(yīng)用軟件。目前移動(dòng)App開發(fā)主要分為三種模式:Native App、Web App和Hybrid App。
1. Native App
Native App是指本地應(yīng)用程序,后文稱之為原生App,如圖1-1所示。
從圖1-1中可以看到,原生App內(nèi)部運(yùn)行的是二進(jìn)制數(shù)據(jù)(機(jī)器碼);也就是說,原生語言最后是直接轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)執(zhí)行的,并且可以直接調(diào)用底層的設(shè)備API,如手機(jī)振動(dòng)、攝像頭、日歷和地理位置等。
原生App是使用相應(yīng)平臺(tái)特有的開發(fā)工具和語言進(jìn)行開發(fā)的(如Android App),這使得應(yīng)用程序外觀和性能極佳,但是開發(fā)成本較高,因?yàn)槊恳环N移動(dòng)操作系統(tǒng)都需要獨(dú)立的開發(fā)項(xiàng)目,對(duì)企業(yè)來說人員需求量較大。
2. Web App
WebApp是指網(wǎng)頁(yè)應(yīng)用程序,后文稱之為移動(dòng)Web,移動(dòng)Web需要依賴于Mobile Browser(移動(dòng)設(shè)備中的瀏覽器)運(yùn)行,內(nèi)部執(zhí)行普通的網(wǎng)頁(yè)代碼,也可以理解為在移動(dòng)設(shè)備瀏覽器中運(yùn)行的Web應(yīng)用。
移動(dòng)Web主要使用HTML5移動(dòng)Web技術(shù)進(jìn)行開發(fā),包括HTML5、CSS3和JavaScript等。由于只依賴移動(dòng)設(shè)備瀏覽器,可實(shí)現(xiàn)“一次編寫,多個(gè)設(shè)備上運(yùn)行”。雖然開發(fā)人員只使用HTML5和JavaScript就能構(gòu)建功能復(fù)雜的應(yīng)用程序,但目前仍然存在一些局限性,例如沒訪問原生設(shè)備API的功能。
3. Hybrid App
HybridApp是指混合模式移動(dòng)應(yīng)用,后文稱之為混合App。
在圖1-3中可以看到,混合App需要依賴Native Container(原生容器)運(yùn)行,Native Container內(nèi)部可以運(yùn)行網(wǎng)頁(yè)代碼,還可以調(diào)用設(shè)備API。
混合App主要通過Web前端技術(shù)來實(shí)現(xiàn),是介于移動(dòng)Web和原生App這兩者之間的App開發(fā)方式?;旌螦pp開發(fā)的具體實(shí)現(xiàn)方式是:在一個(gè)原生ApP中內(nèi)嵌一個(gè)輕量級(jí)的瀏覽器,然后使用HTML5開發(fā)一部分原生功能,這部分功能能夠在不升級(jí)APP的情況下動(dòng)態(tài)更新。由于是嵌套在原生APP中,這讓混合APP有了訪問原生設(shè)備API的能力。“一次開發(fā),多平臺(tái)運(yùn)行”的特點(diǎn)使得混合App開發(fā)方式在不影響用戶體驗(yàn)的同時(shí)還可以節(jié)省開發(fā)的成本。
以上三種移動(dòng)App開發(fā)模式從開發(fā)成本、維護(hù)更新和安裝等角度進(jìn)行了對(duì)比,如表1-1所示。
在表1-1中可以看出,原生App的開發(fā)成本最高,那么同樣是跨平臺(tái)的App技術(shù),為什么混合App的成本要高于移動(dòng)Web?混合App兼具原生App和移動(dòng)Web的優(yōu)勢(shì),混合App開發(fā)要比普通移動(dòng)Web開發(fā)的技術(shù)要求更高,因此在資源需求相同的情況下,混合App比移動(dòng)Web開發(fā)成本也更高。
混合App是嵌套在“原生殼”里的,因此這些App在App Store或Market(手機(jī)應(yīng)用商店)中都是認(rèn)可的。
北京校區(qū)