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