天天看點

Web App和Native App誰是未來的主宰?

本文詳細分析了Web App和Native App的優勢和劣勢,指出Web隻是我們作為設計者和開發者所期待的一種理想化結果,是一種趨勢,将會是一個相當久的過渡階段,對複雜産品來說,Native App + Web App也許是個不錯的解決方案。

  AD:

  未來是Web App的天下,還是Native App的天下?作為設計師,我們是應該努力把用戶端的體驗提升到最優,還是在網頁應用層面上做更多的設計?這個一直是大家關心的話題。那麼,我們首先應該立體的認識一下Web App和Native App。

  一、Web App

  Web無需安裝,對裝置碎片化的适應能力優于App,它隻需要通過XHTML、CSS和JavaScript就可以在任意移動浏覽器中執行。随着iPhone帶來的WebKit浏覽體驗更新,使得專為iPhone等有WebKit浏覽核心的移動裝置開發的Web應用,也有了如App一般流暢的使用者體驗。

  

  圖1 谷歌 Voice 和谷歌 Gmail是Web App的設計典範

  Web App的優勢:

  1.開發成本低

  2.适配多種移動裝置成本低

  3.跨平台和終端

  4.疊代更新容易

  5.無需安裝成本

  Web App的劣勢:

  1.浏覽的體驗短期内還無法超越原生應用

  2.不支援離線模式(html5将會解決這個問題)

  3.消息推送不夠及時

  4.調用本地檔案系統的能力弱

  圖2 街旁和百度小說,采用HTML5實作了接近Native的體驗效果

  二、Native App

  而App因為位于平台層上方,向下通路和相容的能力會比較好一些,可以支援線上或離線,消息推送或本地資源通路,攝像撥号功能的調取。但是由于裝置碎片化,App的開發成本要高很多,維持多個版本的更新更新比較麻煩,使用者的安裝門檻也比較高。但是比較樂觀的是,App store培養了一種比較好的使用者付費模式,是以在Apple的生态圈裡,開發者的盈利模式是一種明朗狀态,其他market也在往這條路上靠攏。

  圖3 Gowalla和Awesome Note,是移動客戶的經典設計案例

  Native App的優勢:

  1.提供最佳的使用者體驗,最優質的使用者界面,最華麗的互動

  2.針對不同平台提供不同體驗

  3.可節省帶寬成本

  4.可通路本地資源

  5.盈利模式明朗

  Native App的劣勢:

  1.移植到不同平台上比較麻煩

  2.維持多個版本的成本比較高

  3.需要通過store或market的确認

  4.盈利需要與第三方分成

  三、融合

  喬布斯有一次談到這個問題,他說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 掌上百度的架構說明,用戶端嵌套服務端,保證服務的高效疊代與更新

  谷歌的Chrome OS和Android都是作業系統,但走的是兩條路。Chrome OS走的是Web app的路。從Chrome OS 大會上釋出的Chrome Web App能看出來,谷歌想為未來的Chrome OS做鋪墊,鼓勵更多的開發者開發出具有應用程式體驗的Web App,正如Chrome OS官網上說的——“Nothing but the web”。而Android走的是Native App的路。Android作為手機平台的作業系統,明顯更注重應用程式開發,這一點從Android Market可以看出來。也許前微軟首席架構師Ray Ozzie的評價更加一針見血:“谷歌的戰略中Android(以app為主)是在賭過去,而Chrome OS(完全基于Web)則是在賭未來。”

  于是我們可以得到這樣一個啟發,你要想服務于未來,必須不斷的跟随技術發展的腳步,提供更好的網頁服務和體驗。但是人們是活在當下,為了當下使用者的需求,又必須提供現階段浏覽體驗最好的用戶端産品。但是,用戶端是笨重且遲緩的,它不能像傳統網頁那樣,一有風吹草動就華麗轉身,隻能規劃好功能點,一步一步疊代,畢竟使用者的更新成本太高了。是以,就有了這種Web App + Native App的架構,在現有條件下給使用者最好的浏覽體驗和更新疊代。

  四、未來趨勢

  雖然我們都願意相信,當Web的體驗和Native的體驗逐漸趨近的時候,人們更願意把精力花在内容擷取上,而不是軟體互動上,但是現階段的互動體驗,恰恰是影響人們擷取内容的主要短闆。是以,趨勢擺在那裡,我們卻無法預測這個時間差。

  就跟電腦端的應用一樣,雖然現在Web化的趨勢已經非常明顯了,但是還是無法取代你本機安裝的一些工具類的、遊戲類的應用,在Web技術沒有達到本地應用的效率和體驗之前,Web是無法颠覆Native的。

  總得來說,Web隻是我們作為設計者和開發者所期待的一種理想化結果,開發成本低、輕松跨平台、疊代更新快,但是顯然,現階段使用者的期待和手機裝置廠商的期待還是體驗上更勝一籌的Native。Web之于我們,隻是一種趨勢。在這個也許會非常久的過渡階段,對複雜産品來說,Native App + Web App也許是個不錯的解決方案。

本文轉自 wws5201985 51CTO部落格,原文連結:http://blog.51cto.com/wws5201985/799668,如需轉載請自行聯系原作者

繼續閱讀