1.前言
六年前我國(guó)的移動(dòng)網(wǎng)絡(luò)行業(yè)延續(xù)了之前幾年來(lái)百分之五十的增長(zhǎng)速度,尤其是4G網(wǎng)絡(luò)的廣泛運(yùn)用,國(guó)內(nèi)智能移動(dòng)設(shè)備的不斷完善和更新,伴隨著的便是移動(dòng)網(wǎng)絡(luò)軟件的快速發(fā)展,具體內(nèi)容且看
合肥APP開(kāi)發(fā)公司小編是怎么說(shuō)的吧!
移動(dòng)APP開(kāi)發(fā)是為了小型,無(wú)線計(jì)算設(shè)備編寫軟件的程序的集合,像智能手機(jī)或者平板電腦。移動(dòng)應(yīng)用開(kāi)發(fā)類似于傳統(tǒng)的軟件開(kāi)發(fā),但關(guān)鍵的不同在于移動(dòng)應(yīng)用通常利用在一個(gè)具體移動(dòng)設(shè)備提供的獨(dú)特性來(lái)編寫軟件。
APP的開(kāi)發(fā)基于硬件設(shè)備所運(yùn)行的操作系統(tǒng),現(xiàn)在主流的移動(dòng)操作系統(tǒng)有蘋果的IOS,谷歌的Android和微軟的Windows等,主要通過(guò)運(yùn)行應(yīng)用的硬件和設(shè)備的其他系統(tǒng)來(lái)約束來(lái)區(qū)別于桌面和Web應(yīng)用開(kāi)發(fā),這些約束從平臺(tái)到平臺(tái)有著微小的變化。
開(kāi)發(fā)模式主要包括Native APP(原生開(kāi)發(fā)模式)和Web APP(網(wǎng)頁(yè)開(kāi)發(fā)模式)兩大類,以及在這兩大類基礎(chǔ)上衍生的Hybrid APP(混合開(kāi)發(fā)模式)。選擇用何種開(kāi)發(fā)模式將對(duì)App開(kāi)發(fā)的周期、運(yùn)行效果、適應(yīng)范圍產(chǎn)生影響。
2.1 Native APP開(kāi)發(fā)模式
Native APP即為本地型開(kāi)發(fā)模式,代碼翻譯之后以二進(jìn)制或者字節(jié)碼的形式運(yùn)行在OS上,直接調(diào)用OS的Device API。和傳統(tǒng)的PC桌面程序類似,項(xiàng)進(jìn)行Native APP應(yīng)用的開(kāi)發(fā),必須對(duì)硬件設(shè)備以及所使用的開(kāi)發(fā)平臺(tái)有深入的了解。這意味著開(kāi)發(fā)人員不得不針對(duì)每一種制造商的設(shè)備學(xué)會(huì)一組獨(dú)特的工具和技巧。
本地型開(kāi)發(fā)采用低級(jí)軟件語(yǔ)言,相對(duì)于主流的企業(yè)開(kāi)發(fā)而言,這仍然類似于嵌入式系統(tǒng)的開(kāi)發(fā)方式。比如對(duì)Apple app應(yīng)用開(kāi)發(fā)需要用到Objevtive C,對(duì)Google的Android APP開(kāi)發(fā)需要用到JAVA。該模式通常是由“云服務(wù)器數(shù)據(jù)+APP應(yīng)用客戶端”兩部分構(gòu)成,APP應(yīng)用所有的UI元素、數(shù)據(jù)內(nèi)容、邏輯框架均安裝在手機(jī)終端上。
Native APP模式的優(yōu)點(diǎn)是應(yīng)用程序位于平臺(tái)層上方,具有較好的下行訪問(wèn)和兼容能力,可以支持在線或離線,消息推送或本地資源訪問(wèn),攝像撥號(hào)功能的調(diào)取,充分利用設(shè)備的資源,提供良好的交互式體驗(yàn)。
Native APP模式的缺點(diǎn)也比較明顯,開(kāi)發(fā)周期比較長(zhǎng),開(kāi)發(fā)人員知識(shí)成本比較大,不能在不同的開(kāi)發(fā)平臺(tái)進(jìn)行移植,而且如果要更新版本,需要用戶重新下載安裝,維持多個(gè)版本的成本比較高。
2.2 Web APP開(kāi)發(fā)模式
Web App,以HTML+JS+CSS等WEB計(jì)師編程,代碼運(yùn)行在瀏覽器中,通過(guò)瀏覽器來(lái)調(diào)用Device API。程序無(wú)需安裝,對(duì)硬件設(shè)備的適應(yīng)能力優(yōu)于Native App。該開(kāi)發(fā)具有跨平臺(tái)的優(yōu)勢(shì),該模式通常由“HTML 5 云網(wǎng)站+APP應(yīng)用客戶端”兩部分構(gòu)成,APP應(yīng)用客戶端秩序安裝應(yīng)用的框架部分,而應(yīng)用的數(shù)據(jù)則是每次打開(kāi)APP的時(shí)候,去云端取數(shù)據(jù)呈現(xiàn)給手機(jī)用戶。
Web APP模式的優(yōu)點(diǎn)是開(kāi)發(fā)周期短,開(kāi)發(fā)成本比較低,適配多種移動(dòng)設(shè)備,軟件更新的時(shí)候只需要在服務(wù)器端就可以完成,客戶端不需要進(jìn)行更新操作,軟件迭代速度比較快。
Web APP模式的缺點(diǎn)就是用戶的體驗(yàn)不如Native App,而且消息推送不夠計(jì)師,調(diào)用本地文件系統(tǒng)的能力比較弱,手機(jī)用戶無(wú)法上網(wǎng)則無(wú)法訪問(wèn)APP應(yīng)用中的數(shù)據(jù),APP的訪問(wèn)數(shù)據(jù)受手機(jī)終端上網(wǎng)的限制,每次使用均會(huì)消耗一定的手機(jī)上網(wǎng)流量。
2.3 Hybird App開(kāi)發(fā)模式
Hybrid APP模式介于Web APP,Native APP 這兩者之間。它雖然看上去是一個(gè)Native App,但在 只有一個(gè)UI WebView,里面訪問(wèn)的是一個(gè)Web App。
百度提出的Light App就是基于這種模式的變種,即輕量級(jí)應(yīng)用,是一-種基于平臺(tái)級(jí)手機(jī)客戶端而產(chǎn)生的服務(wù):開(kāi)發(fā)門檻低、占用系統(tǒng)資源少:體驗(yàn)優(yōu)于Web APP, 比Native APP輕但能實(shí)現(xiàn)等同Native APP的豐富功能和精致交互體驗(yàn)。
相比于wbapp.hybird app把Web代碼封裝到App里面可以提高性能和可訪問(wèn)性,但是不允許遠(yuǎn)程更新。性能有一定保證,更新還是要走app store.
Hybrid App開(kāi)發(fā),現(xiàn)階段主流的平臺(tái)包括PhoneGap: AppCan, appMobi, Tianium等,它們基于webkit開(kāi)源內(nèi)核,使用HTML5標(biāo)準(zhǔn)開(kāi)發(fā),適配機(jī)型簡(jiǎn)單,支持開(kāi)發(fā)者自定義插件,并能很好的應(yīng)用于商業(yè),教育,娛樂(lè)等行業(yè),成為移動(dòng)開(kāi)發(fā)者的首選開(kāi)發(fā)平臺(tái)。
3.小結(jié)
Web App和Native App誰(shuí)是發(fā)展趨勢(shì)的爭(zhēng)論一直持續(xù),WebApp面臨種種技術(shù)和生態(tài)制約的前提下,二者將長(zhǎng)期共存,Web App和Native App都將成為移動(dòng)開(kāi)發(fā)者的標(biāo)配。
每一種開(kāi)發(fā)模式都有自己的適用范圍,在選擇開(kāi)發(fā)模式的時(shí)候?qū)⒁紤]很多因素,在過(guò)去開(kāi)發(fā)者經(jīng)常在Native App和Web App之間進(jìn)行選擇,但是隨著Hybrid App開(kāi)發(fā)模式的成熟,現(xiàn)在很多企業(yè)級(jí)用戶都在考慮Hybrid App解決方案,這或許是一個(gè)不錯(cuò)的選擇。