h5作的app和原生app的區別

之因此說h5作的app和原生app的區別,是由於一位博友的問題:web

隨着 h5 的普及,是否是再也不須要開發 app ?

個人回答是要分業務需求,分場合而定。小程序

好比如今的微信小程序這麼流行,甚至也取代了很多app,可是爲何仍是要開發app呢?微信小程序

以我我的的想法,主要認爲瀏覽器

性能是一個很是大的問題(微信小程序的功能與App相比,App功能豐富的前提下,還能夠確保性能,而微信小程序與同h5開發的app同樣,性能始終是一個不可跨越的問題,不過根據摩爾定律,十八個月處理器性能提升,價格降低,之後性能也許再也不是一個問題。其實之因此微信小程序流行,在於微信廣泛的使用及其廣大的用戶量);安全

 

下面進入正題:服務器

H5開發的web APP和原生APP的區別有如下幾個方面(引用一位朋友說的),我認爲這位朋友說的比較全面:
1、開發方面
原生App
⊙ 每一種移動操做系統都須要獨立的開發項目
⊙ 每種平臺都須要獨立的開發語言。Java(Android), Objective-C(iOS)以及C++(Windows Mobile)等等
⊙ 須要使用各自的軟件開發包,開發工具以及各自的控件 微信

移動Web App
⊙ 由於運行在移動設備的瀏覽器上,因此只須要一個開發項目
⊙ 這種應用可使用HTML5,CSS3以及JavaScript以及服務端語言語言來完成(PHP,Ruby on Rails,Python)
⊙ 這裏可沒有標準的SDK,基本任意選擇,別忘了有一些跨平臺的開發工具,好比PhoneGap, Sencha Touch 2,APPcan以及Appcelerator Titanium等等。

2、能力方面
原生App
⊙ 可以與移動硬件設備的底層功能,好比我的信息,攝像頭等等

移動Web App
⊙ 只能使用有限的移動硬件設備功能。

3、獲取方法
原生App
⊙ 直接下載到設備
⊙ 以獨立的應用程序運行(並不須要瀏覽器)
⊙ 用戶必須手動去下載並安裝這些原生App
⊙ 有一些商店與賣場來幫助用戶尋找你的App,目前app市場不可勝數

移動Web App
⊙ 從移動設備上的瀏覽器訪問
⊙ 不須要安裝額外的軟件
⊙ 軟件更新只須要服務器就夠了
⊙ 由於如今沒有什麼商品或賣場提供這種App,因此如何搜索這些移動Web App至關不簡單。

4、版本控制
原生App
⊙ 用戶能夠自由地選擇是否更新軟件版本,因此會出現不一樣用戶同時使用不一樣版本的狀況

移動Web App
⊙ 全部的用戶都是用一樣的版本

5、優點
原生App

⊙ 比移動Web App運行快
⊙ 一些商店與賣場會幫助用戶尋找原生App
⊙ 官方賣場的應用審覈流程會保證讓用戶獲得高質量以及安全的App
⊙ 官方會發布不少開發工具或者人工支持來幫助你的開發

移動Web App
⊙ 跨平臺開發
⊙ 用戶不須要去賣場來下載安裝App
⊙ 任什麼時候候均可以發佈App,由於根本不須要官方賣場的審覈
⊙ 若是你已經有了一個Web App,你可使用 responsive web design來輔助改進

6、缺陷
原生App
⊙ 開發成本高,尤爲是當須要多種移動設備來測試時
⊙ 由於是不一樣的開發語言,因此開發,維護成本也高
⊙ 由於用戶使用的App版本不一樣,因此你維護起來很困難
⊙ 官方賣場審覈流程複雜且慢,會嚴重影響你的發佈進程

移動Web App
⊙ 沒法使用不少移動硬件設備的獨特功能
⊙ 要同時支持多種移動設備的瀏覽器讓開發維護的成本也不低
⊙ 若是用戶使用更多的新型瀏覽器,那問題就更很差處理了
⊙ 對於用戶來講,這種App很難被用戶發現

附:原生App 與 移動Web App:您如何選擇?
因此在你準備作移動App時,你應該先問問本身如下幾個問題:

1. 你的應用是否須要使用某些設備的特殊功能,好比攝像頭,攝像頭閃光燈等
2. 你的開發預算是多少?
3. 你的應用是否必定須要網絡
4. 你的應用的目標硬件設備是全部的移動設備仍是僅僅只是一部分而已
5. 你本身已經熟悉的開發語言
6. 這個應用對於性能要求是否苛刻
7. 如何靠這個應用贏利網絡

相關文章
相關標籤/搜索