首先,h5優勢:
2. h5現在已經能做越來越多的事,從地理位置獲取到傳感器獲取到陀螺儀,h5的能力已經越來越大,並且相信會變得更大,這讓開發者的門檻大大降低,更多的前端可以直接用js就能做出強大的東西——潛力
3. 跨平臺。現在要做一個原生的app,至少要一批人做ios一批人做android,說不定做大點,windows phone又要找一批人搞,成本對小團隊來說可相當不小,而h5,基本搞定一個就全部通用了。跨平臺同樣是h5的一個大優勢——成本低
優勢說完了劣勢來了:
1. 說實話h5的性能真的差得可以,處女座表示實在很難接受,之前算是h5負責了比較久,想方設法開硬件加速,減少節點減少請求亂七八糟,是相對效率高了,但是離原生還有很大的距離,這個也不多說了,性能是硬傷——性能性能還是性能
2. 很多h5的頁面喜歡模仿原生的來做,往往原生一兩句代碼就能搞定的東西,用h5做要寫一堆css而且還模仿得不像,人家“啪!”那個選擇框就彈出來了,但在h5裏面卡了2下再出來,這就是差別。而且用h5的話控件難以根據系統更改風格,例如ios6,ios7的選擇框是不同的,原生的話自動適配但是h5倒沒那麼好搞了——界面難以做到和原生一樣和手機ui統一
3. h5的bug真的千奇百怪,好不容易從ie6怪圈逃出來了又遇到了各種各樣的android,甚至ios也會抽風。你說ie6的bug嘛還算有跡可循,百度也有很多沉澱,移動終端的我遇到好多bug根本百度不了,測試那裏一堆手機一個個測總有各種各樣奇怪的問題,勝在有萬能的google和stackoverflow。