隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,許多應(yīng)用在不斷的產(chǎn)生,要說(shuō)現(xiàn)在更新快、開(kāi)放功能多的應(yīng)用,只能是成都微信小程序開(kāi)發(fā)了。微信小程序開(kāi)放了60多個(gè)流量入口,更新了各種新的功能,尤其是之前實(shí)現(xiàn)的頁(yè)面跳轉(zhuǎn)功能,給開(kāi)發(fā)者帶來(lái)了好消息,但同時(shí)也有人說(shuō)這是H5。那么,微信小程序和H5的區(qū)別在哪里?
H5的運(yùn)行環(huán)境是瀏覽器,包括webview,而微信小程序的運(yùn)行環(huán)境并非完整的瀏覽器,因?yàn)樾〕绦虻拈_(kāi)發(fā)過(guò)程中只用到一部分H5技術(shù)。
小程序的運(yùn)行環(huán)境是微信開(kāi)發(fā)團(tuán)隊(duì)基于瀏覽器內(nèi)核完全重構(gòu)的一個(gè)內(nèi)置解析器,針對(duì)性做了優(yōu)化,配合自己定義的開(kāi)發(fā)語(yǔ)言標(biāo)準(zhǔn),提升了小程序的性能。
官方文檔表明腳本內(nèi)無(wú)法使用瀏覽器中常用的window對(duì)象和document對(duì)象(基于這一點(diǎn),像zepto/jquery這種操作dom的庫(kù)就被完全拋棄了)。
不過(guò)微信給開(kāi)發(fā)者提供了開(kāi)發(fā)工具,內(nèi)置了編程、調(diào)試、開(kāi)發(fā)環(huán)境以及發(fā)布,開(kāi)發(fā)者只需按照官方文檔進(jìn)行開(kāi)發(fā),就能保證小程序在微信內(nèi)穩(wěn)定運(yùn)行。
H5 的開(kāi)發(fā),涉及開(kāi)發(fā)工具(vscode、Atom等)、前端框架(Angular、react等)、模塊管理工具(Webpack 、Browserify 等)、任務(wù)管理工具(Grunt、Gulp等),還有UI庫(kù)選擇、接口調(diào)用工具(ajax、Fetch Api等)、瀏覽器兼容性等等。
盡管這些工具可定制化非常高,大部分開(kāi)發(fā)者也有自己的配置模板,但對(duì)于項(xiàng)目中各種外部庫(kù)的版本迭代、版本升級(jí),這些成本加在一起那就是個(gè)不小數(shù)目了。
而開(kāi)發(fā)一個(gè)微信小程序,由于微信團(tuán)隊(duì)提供了開(kāi)發(fā)者工具,并且規(guī)范了開(kāi)發(fā)標(biāo)準(zhǔn),則簡(jiǎn)單得多。前端常見(jiàn)的HTML、CSS變成了微信自定義的WXML、WXSS,WXML,官方文檔中都有明確的使用介紹,開(kāi)發(fā)者按照說(shuō)明專(zhuān)注寫(xiě)程序就可以了。
需要調(diào)用后端接口時(shí),調(diào)用發(fā)起請(qǐng)求API;需要上傳下載時(shí),調(diào)用上傳下載API;需要數(shù)據(jù)緩存時(shí),調(diào)用本地存儲(chǔ)API;引入地圖、使用羅盤(pán)、調(diào)用支付、調(diào)用掃碼等等功能都可以直接使用;UI庫(kù)方面,框架帶有自家weui庫(kù)加成。
并且在使用這些API時(shí),不用考慮瀏覽器兼容性,不用擔(dān)心出現(xiàn)BUG,顯而易見(jiàn)微信小程序的開(kāi)發(fā)成本相對(duì)低很多。
微信小程序相對(duì)于H5能獲得更多的系統(tǒng)權(quán)限,比如網(wǎng)絡(luò)通信狀態(tài)、數(shù)據(jù)緩存能力等,這些系統(tǒng)級(jí)權(quán)限都可以和微信小程序無(wú)縫銜接。
而這一點(diǎn)恰巧是H5 被詬病的地方,這也是HL5的大多應(yīng)用場(chǎng)景被定位在業(yè)務(wù)邏輯簡(jiǎn)單、功能單一的原因。
在運(yùn)行流暢度方面,無(wú)論對(duì)于用戶(hù)還是開(kāi)發(fā)者,都可以直觀體驗(yàn)出兩者的差異。這也是普通大眾最容易區(qū)分小程序與H5的一點(diǎn)。
打開(kāi)H5,實(shí)際上是打開(kāi)一個(gè)網(wǎng)頁(yè),而網(wǎng)頁(yè)需要在瀏覽器中渲染。所以加載這一過(guò)程,會(huì)給人明顯的「卡頓」感覺(jué),面對(duì)復(fù)雜的業(yè)務(wù)邏輯或者豐富的頁(yè)面交互時(shí)尤為明顯。
而微信小程序,它的代碼直接在微信上運(yùn)行,省去了通過(guò)瀏覽器渲染的步驟,因此,在微信中使用小程序,才會(huì)比H5流暢很多。
除了首次打開(kāi)需要幾秒的加載時(shí)間外,小程序各個(gè)頁(yè)面的切換、跳轉(zhuǎn)等體驗(yàn)已經(jīng)媲美原生App,有著同樣的柔絲般順滑的效果。
概括來(lái)說(shuō),成都微信小程序開(kāi)發(fā)相對(duì)H5有著開(kāi)發(fā)成本低、功能更豐富、使用體驗(yàn)更佳的優(yōu)點(diǎn),目前的微信小程序可以實(shí)現(xiàn)網(wǎng)頁(yè)端跳轉(zhuǎn),為營(yíng)銷(xiāo)推廣提供想象空間,微信小程序的功能和經(jīng)驗(yàn)將會(huì)越來(lái)越完善,將是一個(gè)好的發(fā)展機(jī)會(huì)。
文章均為全美專(zhuān)業(yè)成都小程序開(kāi)發(fā)公司,專(zhuān)注于成都小程序開(kāi)發(fā)服務(wù)原創(chuàng),轉(zhuǎn)載請(qǐng)注明來(lái)自http://www.39247.cn/news/447.html