javascript - 為什麼app端的體驗要比行動端網頁更流暢?
巴扎黑
巴扎黑 2017-05-16 13:06:37
0
5
436

昨晚無意中看到一個同事問了這個問題,自己也留意並思考了一下,也參考了網上的一些評論,但是沒有發現什麼自己想要的東西。自己感覺行動端的應該都是採用webview,為何有時候差距會比較大呢?

巴扎黑
巴扎黑

全部回覆(5)
漂亮男人

樓主的意思是Native app和H5做的app作對比嗎,如果是的話:
H5第一個問題就是動畫,不管你用Css3動畫還是js動畫都是沒有原生的那麼流暢的,個別使用可能還不明顯,但大批量使用的情況下頁面渲染和遠端資料讀取都會造成卡頓,就算採取預先載入什麼的也不是很理想。
第二個就是大規模載入資料渲染頁面的時候,頻繁的DOM操作,就算用了MVVM框架也採取了下級頁面資源提前快取的方式,你還得保證你也的程式碼夠優雅夠好,記憶體控制的很好,這對程式設計師本身也是一個考驗。 WebView的相容也是蛋疼菊緊。
最重要的就是,不管你用什麼方案和方法,效能問題都是沒辦法跟Native app比的。

仅有的幸福

APP用原生的語言實現的,效率和速度肯定要好些;對於網頁的話,要么是依賴網絡,要么要通過中間轉換將網頁渲染,比原生語言經歷的過程要多一些,所以勢必網頁要比原生APP要慢一點;但這個差距會越來越小,相信有一天網頁可以一樣流暢。

曾经蜡笔没有小新

行動端的大多數資源不是都在本地?
只是透過api獲取一些文字吧

世界只因有你

行動端應用的架構還是以原生為主,用webview的地方比較少,例如富文本,活動頁面等。
以iOS為例,ui介面的會優先加載,隨後加載請求到的數據,而行動裝置網頁,需要伺服器返回html css js 以及其它庫等大量數據,介面才能顯示去來,所以行動裝置網頁給人的感覺就是卡頓。

仅有的幸福

我也發現了這個問題,可能本質上還是dom操作要比原生app的各種hide,show要更加費時。因為最早的html設計是用於簡單的頁面展示,串流顯示內容。而現在頁面元素越來越多,尤其是各種元素之間的覆蓋層疊,dom的反覆增刪改導致卡頓。就比如說vscode和sublime在開啟大型檔案的時候,前者無論是配置多高的電腦,用起來總是會有一些卡頓,雖然只是1-2s左右。 sublime是原生的應用,就沒那麼卡。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!