在這個App的時代,轉戰了前端,一直接觸的都是pc, 離out不遠了。html
那麼接下來,app是我接下來半年的重點,爲何是半年,由於時間很少了。前端
由於是前端,那麼個人重心確定是 Web App, Hybrid App,想起java都頭疼。html5
關於寫這篇博客,屬於打標籤,讓本身初步的理解三種app.java
Web App: 純html5 + js + cs 編寫的網頁程序,活在瀏覽器裏面,也就是咱們原來講的wap。ios
Hybrid App: web-app、native-app這二者之間的app,它雖然看上去是一個Native App,裏面訪問的是一個Web App。web
Native App: 採用Java/objective-c/C#等編寫的運行在手機操做系統裏面應用程,能直接調用系統各類資源,和windows桌面程序一個道道。 objective-c
Web App(網頁應用)
|
Hybrid App(混合應用)
|
Native App(原生應用)
|
|
開發成本 | 低 |
中
|
高
|
維護更新 |
簡單
|
簡單
|
複雜
|
體驗 |
差
|
中
|
優
|
Store或market承認 | 不承認 | 承認 |
承認
|
安裝 | 不須要 |
須要
|
須要 |
跨平臺
|
優
|
優
|
差
|
這裏這麼多,我以爲核心仍是體驗和成本的一個權衡。windows
web app的瓶頸就是性能,對本地資源(硬件存儲等)的控制,反之也是Native app的優點。瀏覽器
相同條件下,體驗好天然留得住人,那麼潛在的收益就來了。app
相同條件下,開發維護成本低,那麼收益也大。ios的審覈流程相對嚴格,可能細微的修改或者緊急的修復週期都不短。
體驗和成本的比較下,體驗還要佔到優點。
優缺點比對過了,那麼再看看適用場合,借用知乎孫杰的回答:
1. 偏交互的Native,偏瀏覽的Web:交互指複雜操做,輸入/選擇什麼的
2. 已穩定的Native,試錯中的Web:H5頁面用來作低成本驗證很好
3. 訪問硬件Native,信息展現Web:指手機裏的各類傳感器什麼的
4. 核心功能Native,周邊輔助Web:把工做量多投在刀刃上
可是我本身也補充一點點:
不結合業務純說技術就是耍流氓,瀏覽器一直在發展,H5/http2/worker等的出現讓web app的開發更上一層樓,在native app爲主的app時代,Hybrid形式只會更好。
參考: