汪志成
作為一個程序員,這兩天的朋友圈被微信小應用刷屏了吧?想試了吧?沒拿到邀請吧?沒關系,我來幫你!
當然,我沒法幫你拿到邀請碼 —— 因為我也沒有。不過,別失望,我今天要跟大家談一項比微信小程序更宏觀的概念 —— 提出的PWA。
1
PWA是什么?
PWA全稱是“ Web Apps”,譯成中文就是漸進式應用。這是在2015年6月15日提出的概念,參見Alex 寫的《 Noted》。
那么,什么是漸進式應用呢?Alex寫道:
在昨天的晚餐上,我和列舉出了新型應用的幾個特征:
2
PWA怎么用?
一個PWA的使用過程大概是這樣的:
這貨開始就是一個普通網頁:
然后,這是什么鬼?
這網站看著還不錯,那就接受吧!
它出現在手機的首屏了,以后隨叫隨到!
點了就能像一個本地應用那樣啟動它:
看,啟動完也跟一個本地應用沒有區別:
3
PWA的好處
Web應用(網頁)和本地應用(App)各有優勢,比如:
那么,它們能否合二為一呢?這就是PWA所做的事!
通過前面提到的這些步驟,PWA可以讓用戶同時獲得這兩種好處。這無論對于用戶本身還是對于應用的開發者都非常有意義。
4
如何實現PWA?
其實從Alex的描述中就可以看到,在技術上我們離實現PWA并不遠:
Web應用開發技術
已經具備。
特別是得益于等SPA應用的普及,SPA不但響應更加快速,更加接近原生應用的操作體驗微信小程序 不用服務器微信小程序 不用服務器,而且讓我們可以完全不依賴服務器工作。
離線存儲技術
可能有人還記得一項叫的技術,它已經廢棄了,現在被 所取代。這是一個更強大的,它不僅能存儲HTML/JS等靜態文件,而且還讓你能夠在客戶設備上運行起一個仿真的超輕量級Web服務器,你在里面已經幾乎可以寫Node程序了!
這是新的H5標準的一部分,而不是PWA特有的。
推送通知
H5標準中已經有了用來推送通知的API(用過Web Gmail的話應該見過),現在只要把它和操作系統的API對接就行了。當然,這最好由操作系統提供支持,這已經實現了,那就是新推出的 7。
App殼程序
這個殼程序其實自己來實現也沒問題,技術上沒啥難度,不過不用重復造輪子了,因為官方已經出了一個,參見。如果用 2就更幸福了,因為 2還制作了一個 2專用的殼:。不過,它現在還處于未發布狀態,早鳥可以開始提前嘗試了。
4
微信小程序與PWA
雖然"微信小程序"概念的提出比PWA晚了半年,不過相信張小龍這個級別的產品經理應該會有獨特的實現方式和生態圈支持并提供廣闊的應用場景,或許我們應該把微信小程序看做PWA的一種優質實現。
假如你沒有拿到微信小程序的邀請碼,不妨像我一樣,先從研究PWA開始吧。