App經常使用開發模式

App經常使用開發模式

Native App

傳統的原生App開發模式,有iOS和安卓兩大系統,須要各自語言開發各自App。css

優勢:性能和體驗都是最好。
缺點:開發和發佈成本高, 維持多個版本的更新升級比較麻煩,用戶的安裝門檻也高html

WebApp

移動端的網站, h5
開發和發佈成本最低, 性能和體驗較差,受到瀏覽器處理能力的限制api

Hybrid App

混合模式移動應用,介於Web App、Native App這兩之間App開發技術, 兼具「Native App良好交互體驗的優點」和「Web App跨平臺開發的優點」瀏覽器

原理: 由Native經過JSBridge等方法提供統一的API,用html,css實現界面,JS寫邏輯調用API,最終頁面在Webview中顯示,這種模式下,Android、iOS的API通常有一致性,HybridApp因此有跨平臺效果app

開發者能夠像開發WebApp同樣開發app的視覺UI,當須要使用原生功能(如攝像頭,陀螺儀等功能)時,只須要調用官方的API就能夠實現Native的效果。至於JS和Native的通訊,經常使用的有URL監聽和Hybrid廠商使用的JSBridge通訊,二者原理相近。工具

Hybird App 的常見跨平臺開發工具備PhoneGap,Ionic, 國內有AppCan佈局

缺點:Hybird嚴重受限於WebView的解析渲染效率,須要原生配合。性能

JSBridge調用方式
clipboard.png開發工具


React Native App

Facebook發現Hybrid存在不少缺陷和不足,而後本身開發了一套RN, 使用JSX寫原生界面,js經過JSBridge調用原生API渲染UI交互通訊
支持flexBox佈局, 採用DOM 結構;flex

優勢:效率體驗接近Native App,發佈和開發成本低於Native App。
缺點:新東西,更新迭代快,api後期同早期變化很大,須要踩坑。。

Weex App

阿里開發團隊在RN的成功案例上,設計的一套開發模式,2016年4月正式開源,並在v2.0版本官方支持Vue.js優勢:單頁開發模式效率極高,熱更新發包體積小,而且跨平臺性強。缺點:同RN, 且社區沒有RN活躍,已捐獻給 Apache 基金會孵化管理。。。奔潰。。。

相關文章
相關標籤/搜索