首先明確幾個概念
1. W3C:指萬維網(wǎng)聯(lián)盟(World Wide Web Consortium),是一個國際的標(biāo)準(zhǔn)的制定機(jī)構(gòu)。
2. H5(HTML5,HyperText Markup Language 5的縮寫),HTML5 是由W3C制定的新HTML標(biāo)準(zhǔn),HTML用于開發(fā)web網(wǎng)頁。
3. 微信小程序,是由微信客戶端提供的開放能力支持的一種應(yīng)用形式,完全依賴于微信 APP 環(huán)境。
為什么有人把小程序和H5拿來比較?
H5標(biāo)準(zhǔn)出來之前,HTML在手機(jī)端顯示效果不好,而HTML5被設(shè)計為跨平臺的,可以在不同類型的硬件(PC、平板、手機(jī)、電視機(jī)等等)之上運(yùn)行。所以現(xiàn)在很多手機(jī)端應(yīng)用使用H5進(jìn)行開發(fā)。很多公眾號里直接鏈接的應(yīng)用,有些是用小程序框架開發(fā)的,有些是用H5開發(fā)的;這兩種技術(shù)方向大體上能實(shí)現(xiàn)相同的功能,也會有細(xì)微的差異。
不同的軟件公司采用的技術(shù)方向不同。比如你要在開發(fā)一個可以在微信里打開的應(yīng)用,咨詢多家軟件開發(fā)公司,有的說我們使用微信小程序框架開發(fā)的,有的說我們使用H5開發(fā);聽到這里很多人可能一頭霧水,不知道該怎么選擇。
下面我們就說說二者的區(qū)別,幫助您做出選擇。
小程序和H5區(qū)別:
1. 運(yùn)行環(huán)境不同
小程序的運(yùn)行環(huán)境是微信客戶端,所以只能在微信里打開
H5的運(yùn)行環(huán)境是瀏覽器(包括電腦端的IE、Chrome、QQ瀏覽器等,也包括手機(jī)端的Safari、Chrome以及 iOS、Android 系統(tǒng)中的各式 WebView),所以能運(yùn)行在電腦、手機(jī)、平板之上,但是不同的設(shè)備需要單獨(dú)適配,例如專門為手機(jī)端開發(fā)的H5應(yīng)用,可以在電腦上使用,但是顯示效果會很差
2. 運(yùn)行效果,性能上差異
小程序基于微信客戶端實(shí)現(xiàn),對解析進(jìn)行了優(yōu)化,并且一旦首次打開小程序,可以直接緩存很多資源。因此,在使用小程序時可以明顯感覺很流暢,接近原生 APP 的體驗(yàn)
小程序通過使用微信離線存儲,可借助微信提供的資源存儲能力,直接從微信本地加載 Web 資源而不需要再從服務(wù)端拉取,從而減少網(wǎng)頁加載時間,為微信用戶提供更優(yōu)質(zhì)的網(wǎng)頁瀏覽體驗(yàn),使用效果接近原生APP的體驗(yàn)
H5應(yīng)用,實(shí)際上就是打開一個web網(wǎng)頁,需要在瀏覽器中進(jìn)行加載渲染,開始顯示之前都會有一個白屏的過程,無論加載的時間的長短,都會給用戶一種卡或者不靈敏的感覺
3.小程序可以使用微信提供很多開發(fā)能力,而H5應(yīng)用沒有
小程序提供的開放能力:拍攝、錄音、語音識別、二維碼、地圖、支付、分享、卡券等
4. 其他區(qū)別
例如:支付能力,小程序只支持微信支付,而 H5 里可以選擇使用其他支付平臺提供的支付方式