未來是Web App的天下嗎?
一、Web App
Web無需安裝,對設備碎片化的適應能力優于App,它只需要通過XHTML、CSS和JavaScript就可以在任意移動瀏覽器中執行。隨著iPhone帶來的WebKit瀏覽體驗升級,使得專為iPhone等有WebKit瀏覽內核的移動設備開發的Web應用,也有了如App一般流暢的用戶體驗。

圖1 Google Voice 和Google Gmail是Web App的設計典范
Web App的優勢:
- 開發成本低
- 適配多種移動設備成本低
- 跨平臺和終端
- 迭代更新容易
- 無需安裝成本
Web App的劣勢:
- 瀏覽的體驗短期內還無法超越原生應用
- 不支持離線模式(html5將會解決這個問題)
- 消息推送不夠及時
- 調用本地文件系統的能力弱

圖2 街旁和百度小說,采用HTML5實現了接近Native的體驗效果
二、Native App
而App因為位于平臺層上方,向下訪問和兼容的能力會比較好一些,可以支持在線或離線,消息推送或本地資源訪問,攝像撥號功能的調取。但是由于設備碎片化,App的開發成本要高很多,維持多個版本的更新升級比較麻煩,用戶的安裝門檻也比較高。但是比較樂觀的是,App store培養了一種比較好的用戶付費模式,所以在Apple的生態圈里,開發者的盈利模式是一種明朗狀態,其他market也在往這條路上靠攏。

圖3 Gowalla和Awesome Note,是移動客戶的經典設計案例
Native App的優勢:
- 提供***的用戶體驗,***質的用戶界面,最華麗的交互
- 針對不同平臺提供不同體驗
- 可節省帶寬成本
- 可訪問本地資源
- 盈利模式明朗
Native App的劣勢:
- 移植到不同平臺上比較麻煩
- 維持多個版本的成本比較高
- 需要通過store或market的確認
- 盈利需要與第三方分成
三、融合
喬布斯有一次談到這個問題,他說Web是未來,雖然現階段Native給了用戶更好的體驗。如果現在的開發者不有效的利用Web技術,那他就落伍了。但如果過分依賴Web,完全不用Native那也未必就是好事。
IOS平臺上的app有三類:Web App,通過瀏覽器訪問;Native App,通過app store安裝;第三類叫Hybrid App,它雖然看上去是一個Native app,但只有一個UI WebView,里面訪問的是一個Web App,比如街旁網最開始的應用就是包了個客戶端的科,其實里面是HTML5的網頁,后來才推出真正的原生應用。再徹底一點的,如掌上百度和淘寶客戶端Android版,走的也是Hybrid App的路線,不過掌上百度里面封裝的不是WebView,而是自己的瀏覽內核,所以體驗上更像客戶端,更高效。

圖4 掌上百度和Naver客戶端都是Web App+Native App的架構

圖5 掌上百度的架構說明,客戶端嵌套服務端,保證服務的高效迭代與更新
Google的Chrome OS和Android都是操作系統,但走的是兩條路。ChromeOS走的是Web app的路。從Chrome OS 大會上發布的Chrome Web App能看出來,Google想為未來的Chrome OS做鋪墊,鼓勵更多的開發者開發出具有應用程序體驗的Web App,正如Chrome OS官網上說的——“Nothing but the web”。而Android走的是Native App的路。Android作為手機平臺的操作系統,明顯更注重應用程序開發,這一點從Android Market可以看出來。也許前微軟***架構師Ray Ozzie的評價更加一針見血:“Google的戰略中Android(以app為主)是在賭過去,而Chrome OS(完全基于Web)則是在賭未來。”
于是我們可以得到這樣一個啟發,你要想服務于未來,必須不斷的跟隨技術發展的腳步,提供更好的網頁服務和體驗。但是人們是活在當下,為了當下用戶的需求,又必須提供現階段瀏覽體驗***的客戶端產品。但是,客戶端是笨重且遲緩的,它不能像傳統網頁那樣,一有風吹草動就華麗轉身,只能規劃好功能點,一步一步迭代,畢竟用戶的升級成本太高了。所以,就有了這種Web App + Native App的架構,在現有條件下給用戶***的瀏覽體驗和升級迭代。
四、未來趨勢
雖然我們都愿意相信,當Web的體驗和Native的體驗逐漸趨近的時候,人們更愿意把精力花在內容獲取上,而不是軟件交互上,但是現階段的交互體驗,恰恰是影響人們獲取內容的主要短板。所以,趨勢擺在那里,我們卻無法預測這個時間差。
就跟電腦端的應用一樣,雖然現在Web化的趨勢已經非常明顯了,但是還是無法取代你本機安裝的一些工具類的、游戲類的應用,在Web技術沒有達到本地應用的效率和體驗之前,Web是無法顛覆Native的。
總得來說,Web只是我們作為設計者和開發者所期待的一種理想化結果,開發成本低、輕松跨平臺、迭代更新快,但是顯然,現階段用戶的期待和手機設備廠商的期待還是體驗上更勝一籌的Native。Web之于我們,只是一種趨勢。在這個也許會非常久的過渡階段,對復雜產品來說,Native App + Web App也許是個不錯的解決方案。