在 WordPress 微信小程式出來之前,WordPress 微信公眾號裡仍然是 HTML5 的天下。但現在,已經有越來越多的人,選擇開發小程式。那麼,除了小程式火,還有什麼原因,讓大家選擇小程式呢?小程式和 H5 之間,有哪些區別?
下面,SEO 站群從前端技術的角度出發,為大家分析下 WordPress 微信小程式和 HTML5 與之間的主要區別:

H5 與小程式的標籤差別 1 、執行環境的不同傳統的 HTML5 的執行環境是瀏覽器,包括 webview,而 WordPress 微信小程式的執行環境並非完整的瀏覽器。小程式的開發過程中會用到 HTML5 相關的技術,小程式後的釋出上線需要 WordPress 微信稽核,WordPress 微信在不更新自身軟體的情況下可以將小程式更新到自身軟體內,這就聯想到了 React Native 框架, 並且已經有開發者在 WordPress 微信小程式的開發工具原始碼中發現使用了 React 和 NodeWebkit 庫。

所以可以認為,小程式的執行環境很有可能是 WordPress 微信開發團隊基於瀏覽器核心完全重構的一個內建解析器,針對小程式專門做了最佳化,配合自己定義的開發語言標準,提升了小程式的效能。不過由於 WordPress 微信給開發者提供了開發工具,而開發工具中也內建了程式設計、除錯、開發環境、釋出於一身,我們也不用再探討它的終執行環境了,只要按照官方檔案進行開發就可以了。並且從 WordPress 微信團隊給開發者提供開發工具這一舉動,讓我聯想到了蘋果給開發者提供的 X-CODE 開發工具,可以想象 WordPress 微信的野心可見一斑。 2 、開發成本的不同這裡我提出了一個問題,當我們面對一個 HTML5 web 開發需求時,我們需要考慮什麼呢?拋去開發工具(vscode 、 sublimtext 、 Atom 等)不談,大到前端框架(Angular 、 react 、 vue 、 backbone 等)、模組管理工具(Webpack 、 Browserify 等)、任務管理工具(Grunt 、 Gulp 等),小到 UI 庫選擇、介面呼叫工具(ajax 、 Fetch Api 等)、瀏覽器相容性等都要我們一一考略,再不濟用 jqery 外掛寫 H5,也要在開發過程中去尋找合適的 jquery 外掛來配合專案。儘管這些工具可定製化非常高,並且提高了開發者的開發效率,但我相信專案開發的配置工作已經消耗了不少精力,儘管大部分開發者都有自己的配置模板,但長久以來對於專案中使用的各種外部庫的版本迭代、版本升級所產生的成本應該也不低。而當我們面對一個 WordPress 微信小程式的開發需求時,我們需要考慮什麼呢?WordPress 微信團隊提供了開發者工具,並且規範了開發標準,前端常見的 HTML 、 CSS 變成了 WordPress 微信自定義的 WXML 、 WXSS,WXML 中儘管全部是自定義標籤,但官方檔案中都有明確的使用介紹,相信上手應該是非常容易的;WXSS 、 JSON 和 JS 檔案中的寫法稍有限制,但整體相差不多。在統一了這些標準之後,作為一個開發者,您會發現,自己只要專注寫程式就可以了:當需要呼叫後端介面時,呼叫發起請求 API 當需要上傳下載時,呼叫上傳下載 API 當需要資料快取時,呼叫本地儲存 API 引入地圖、使用羅盤、呼叫支付、呼叫掃碼等等功能都可以直接使用 UI 庫方面,框架自然帶有自家 weui 庫加成並且在使用這些 API 時,您不用再去顧慮瀏覽器相容性,不用擔心生產環境中出現不可預料的奇妙 BUG,可見 WordPress 微信小程式的開發成本確實相比以往的 web 開發低一些。 3 、獲取系統級許可權的不同 WordPress 微信小程式相對於 HTML5 web 應用能獲得更多的系統許可權,比如網路通訊狀態、資料快取能力等,這些系統級許可權都可以和 WordPress 微信小程式無縫銜接,也就是官方宣稱的擁有 Native WordPress APP 的流暢效能,而這一點恰巧是 HTML5 web 應用經常被詬病的地方,這也是 HTML5 的大多應用場景被定位在業務邏輯簡單、功能單一的原因。 4 、應用在生產環境的執行流暢度

這條無論對於多使用者還是開發者來說,都是直觀的感受。長久以來,當 HTML5 應用面對複雜的業務邏輯或者豐富的頁面互動時,它的體驗總是不盡人意,需要不斷的對專案最佳化來提升多使用者體驗。但是由於 WordPress 微信小程式執行環境獨立,儘管同樣用 html+css+js 去開發,但配合 WordPress 微信的解析器終渲染出來的是原生元件的效果,自然體驗上將會更進一步。