app
是應用 (application
) 的縮寫,通常咱們指的是,移動 app 開發,移動指的是移動設備平臺,如手機、iPad等; 移動 App
就是移動設備上運行的應用程序,例如咱們手機上的微信、支付寶等應用。vue
瀏覽器
環境中,無需
安裝便可使用web
技術開發實現瀏覽器
負責UI界面的渲染
設備
上, 須要安裝
後使用原生語言
開發實現,能夠調用設備的底層硬件設備
負責UI界面的渲染
移動設備
上, 須要安裝
後使用原生語言
開發, 部分採用web
技術開發原生
語言編寫的功能由移動設置
渲染, web
語言編寫的功能運行在App內嵌的web容器
中,就是一個內嵌的瀏覽器
對比/分類 | Web App | Native App | Hybrid App |
---|---|---|---|
市場承認度 | 不認 | 承認 | 承認 |
是否要安裝 | 否 | 是 | 是 |
開發成本 | 低 | 高 | 中 |
維護更新 | 低 | 高 | 中 |
跨平臺 | 低 | 高 | 中 |
體驗 | 差 | 高 | 中 |
經過上面的對比發現,Native App 性能體驗好,Hybrid App 開發維護成本低。若是有一種技術可以同時擁有二者的優勢就行了,facebook 公司的 ReactNative 所以而生,它使用js和React編寫UI邏輯,而後生成原生控件進行渲染繪製,既擁有媲美原生應用的性能體驗,又擁有混合應用跨平臺、開發快等優勢。react
固然這也不是絕對的,在特殊需求下,仍是會有不足。首先框架自己須要處理大量平臺相關的邏輯,隨着系統與API的升級變化,開發者有可能也須要處理平臺之間的差別,甚至有些特性只能在部分平臺上實現,從而下降跨平臺性。固然,這些問題也會隨着 ReactNative 的版本迭代逐漸改善。git