這篇文章給大家分享的是有關微信小程序是不是html5的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網(wǎng)站建設、網(wǎng)站設計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的雙峰網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
微信小程序不是html5,它是根據(jù)微信的獨立的開發(fā)模式,能過節(jié)約人們的開發(fā)本錢與開發(fā)周期。微信小程序和html5的區(qū)別:1、運行環(huán)境的不同;2、開發(fā)成本的不同;3、獲取系統(tǒng)級權限的不同;4、應用在生產(chǎn)環(huán)境的運行流暢度不同。
本教程操作環(huán)境:windows7系統(tǒng)、HTML5版、Dell G3電腦。
HTML英文全稱為Hyper Text Markup Language,即超文本標記語言。HTML5是一種技術,依附的外殼是是瀏覽器,而小程序是基于微信的一種不需要下載安裝即可使用的應用。
下面從“前端開發(fā)”的視角來看,微信小程序和HTML5也存在著多方面的不同。概括來說有以下四個方面的區(qū)別!
第一條、運行環(huán)境的不同
傳統(tǒng)的HTML5的運行環(huán)境是瀏覽器,包括webview,而微信小程序的運行環(huán)境并非完整的瀏覽器。大家注意,我這里寫的是“非完整的瀏覽器”,有以下幾個原因:
小程序的開發(fā)過程中會用到HTML5相關的技術(并非全部)。
小程序最后的發(fā)布上線需要微信審核,微信在不更新自身軟件的情況下可以將小程序更新到自身軟件內,這就聯(lián)想到了ReactNative框架。并且已經(jīng)有開發(fā)者在微信小程序的開發(fā)工具源碼中發(fā)現(xiàn)使用了react和NodeWebkit庫。
官方文檔中著重強調了腳本內是無法使用瀏覽器中常用的window對象和document對象(基于這一點,像zepto/jQuery這種操作dom的庫就被完全拋棄了)。
所以我認為,小程序的運行環(huán)境很有可能是微信開發(fā)團隊基于瀏覽器內核完全重構的一個內置解析器,針對小程序專門做了優(yōu)化,配合自己定義的開發(fā)語言標準,提升了小程序的性能。
不過由于微信給開發(fā)者提供了開發(fā)工具,而開發(fā)工具中也內置了編程、調試、開發(fā)環(huán)境、發(fā)布于一身,我們也不用再探討它的最終運行環(huán)境了,只要按照官方文檔進行開發(fā)就可以了。并且從微信團隊給開發(fā)者提供開發(fā)工具這一舉動,讓我聯(lián)想到了蘋果給開發(fā)者提供的X-CODE開發(fā)工具,可以想象微信的“野心”可見一斑
第二條、開發(fā)成本的不同
這里我提出了一個問題,當我們面對一個HTML5web開發(fā)需求時,我們需要考慮什么呢?
拋去開發(fā)工具(vscode、sublimtext、Atom等)不談,大到前端框架(Angular、react、vue、backbone等)、模塊管理工具(Webpack 、Browserify 等)、任務管理工具(Grunt、Gulp等),小到UI庫選擇、接口調用工具(ajax、Fetch Api等)、瀏覽器兼容性等都要我們一一考略,再不濟用jqery插件寫H5,也要在開發(fā)過程中去尋找合適的jquery插件來配合項目。
盡管這些工具可定制化非常高,并且提高了開發(fā)者的開發(fā)效率。但小編相信項目開發(fā)的配置工作已經(jīng)消耗了不少精力,盡管大部分開發(fā)者都有自己的配置模板。長久以來對于項目中使用的各種外部庫的版本迭代、版本升級所產(chǎn)生的成本應該也不低。
而當我們面對一個微信小程序的開發(fā)需求時,我們需要考慮什么呢?微信團隊提供了開發(fā)者工具,并且規(guī)范了開發(fā)標準,前端常見的HTML、CSS變成了微信自定義的WXML、WXSS,WXML中盡管全部是自定義標簽,但官方文檔中都有明確的使用介紹,相信上手應該是非常容易的;WXSS、JSON和js文件中的寫法稍有限制,但整體相差不多。在統(tǒng)一了這些標準之后,作為一個開發(fā)者,你會發(fā)現(xiàn),自己只要專注寫程序就可以了:
當需要調用后端接口時,調用發(fā)起請求API;
當需要上傳下載時,調用上傳下載API;
當需要數(shù)據(jù)緩存時,調用本地存儲API;
引入地圖、使用羅盤、調用支付、調用掃碼等等功能都可以直接使用;
UI庫方面,框架自然帶有自家weui庫加成;
并且在使用這些API時,你不用再去顧慮瀏覽器兼容性,不用擔心生產(chǎn)環(huán)境中出現(xiàn)不可預料的奇妙BUG,可見微信小程序的開發(fā)成本確實相比以往的web開發(fā)低很多。
第三條、獲取系統(tǒng)級權限的不同
微信小程序相對于HTML5 web應用能獲得更多的系統(tǒng)權限,比如網(wǎng)絡通信狀態(tài)、數(shù)據(jù)緩存能力等,這些系統(tǒng)級權限都可以和微信小程序無縫銜接,也就是官方宣稱的擁有Native App的流暢性能,而這一點恰巧是HTML5 web應用經(jīng)常被詬病的地方,這也是HTML5的大多應用場景被定位在業(yè)務邏輯簡單、功能單一的原因。
第四條、應用在生產(chǎn)環(huán)境的運行流暢度不同。
最容易區(qū)分小程序與H5的一點, 打開H5,實際上是打開一個網(wǎng)頁,而網(wǎng)頁需要在瀏覽器中渲染,面對復雜的業(yè)務邏輯或者豐富的頁面交互時頁面會卡頓。
而微信小程序,直接在微信上運行,省去了通過瀏覽器渲染的步驟,因此,在微信中使用小程序,才會比H5流暢很多。除了首次打開需要幾秒的加載時間外,小程序各個頁面的切換、跳轉等體驗已經(jīng)媲美原生App,非常順暢。
小程序不能跳轉外部鏈接,H5沒有限制。
概括來說、小程序相對H5有著開發(fā)成本低、功能更豐富、用戶體驗更佳的優(yōu)點。(缺點:微信做了很多限制,很多東西不能自定義)
以上就是我總結的微信小程序跟HTML5的區(qū)別。微信現(xiàn)在月活9億,特別是微信推出大眾號今后,微信的月活也大幅上升,這就為微信小程序帶了十分便利的入口。以9億為基數(shù),奠定了微信小程序的根底。
微信小程序不是HTML5,它是根據(jù)微信的獨立的開發(fā)模式,能過節(jié)約人們的開發(fā)本錢與開發(fā)周期。
感謝各位的閱讀!關于“微信小程序是不是html5”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!