主流App開發方式有三種:Native App 、Web App、Hybird App,而3種方式下又分別有眾多的框架可供選擇,一句話,前端的技術層出不窮,五花八門,讓人應接不暇。這里簡單介紹下這幾種方式的優缺點以及分別挑幾種熱門的框架簡單介紹下。
Native App(原生APP開發模式):Native App開發即我們所稱的傳統APP開發模式,該開發針對IOS(OC或者swift)、Android(Java或者kotlin)等不同的手機操作系統要采用不同的語言和框架進行開發,是專門針對某一類移動設備而生的,它們都是被直接安裝到設備里, APP應用所有的UI元素、數據內容、邏輯框架均安裝在手機終端上。
優點:
1.可輕易調用手機所有硬件實現功能
2.速度更快、性能高、整體用戶體驗最好
3.質量安全性很高
缺點:
1.開發周期長及維護成本高(比如ios和android需2端開發2個app)
2.學習成本高(ios必須會swift,android必須會Java)
Web App(HTML5 APP 框架開發模式):Web App即我們通常所說的H5 app,主要通過HTML,CSS,JS構建頁面,然后發布到服務器,用戶通過手機網絡訪問這些頁面。類似微信公眾號等
優點:
1.項目獨立,維護更容易,兼容多平臺
2.開發周期短,學習成本低
3.更新發版更容易
缺點:
1.體驗不好,對設備和網絡要求高,經常卡頓,性能差
2.無法調用系統硬件
Hybrid App(混合模式移動應用):Hybrid App是指介于Web App、Native App這兩者之間的app, Hybrid App主要以JS+Native兩者相互調用為主,從開發層面現“一次開發,多處運行”的機制,成為真正適合跨平臺的開發,是目前乃至未來發展的趨勢。
優點:
1.維護容易,能調用部分系統硬件,兼容多平臺
2.開發周期短,學習成本低
缺點:
1.可能需要會原生開發以支持更多的硬件調用
2.性能跟原生還是有差距,對設備有一定要求
NativeApp:以前ios開發用的OC語言,現在基本都是用swift了。而android,以前用的都是Java,去年google官宣kotlin成為android開發的官方語言,不過,現在用的開發者還是比較少,android studio已支持kotlin。
Web App JQuery Mobile:看名字就知道,這個是使用html和jQuery構建的手機應用,它唯一的優點估計也就是上手簡單了,以前jQuery畢竟是前端必備技能,這幾年連jQuery都很少開發者用了,甚至大公司都在重構準備去jQuery化,所以,這個框架,基本涼了,不過不得不承認jQuery那些年的影響力,太大了。
AmazeUI:號稱中國首個開源 HTML5 跨屏前端框架,移動端優先,基于jQuery,現在用的人還是有不少,它提供了不少的web組件和js插件,而且調用極其簡單,樣式也還可以;但是,amazeui項目github2年前就停更了,后面又搞了個基于react的amazeui-touch框架,不過在出了1.0release后,也停更了,最后一次更新是在2017年10月。
其他H5 UI框架;其他還有蠻多的,甚至純js,html也可以開發web app,普遍存在性能差,對設備和網絡要求高等問題。這些年,興起的公眾號和小程序甚至快應用,基本可以取代它們了。
Hybird App:Hybird App近年來發展勢頭猛,個人覺得也是移動開發的趨勢。
Flutter:要說最近最火的跨平臺移動開發框架,非flutter莫屬。flutter是google的移動UI框架,可以快速在iOS和Android上構建高質量的原生用戶界面。注意,是原生用戶界面,意味著,它的性能基本是和原生一樣的。
flutter與用于構建移動應用程序的其它大多數框架不同,因為flutter既不使用WebView,也不使用操作系統的原生控件。 相反,Flutter使用自己的高性能渲染引擎來繪制widget,flutter使用C、C ++、Dart和Skia(2D渲染引擎)構建;flutter 用Dart作為開發框架和
widget的語言。
Ionic:Ionic提供了一個免費且開源的移動優化HTML,CSS和JS組件庫,來構建高交互性應用。基于Sass構建和Angular優化。
即將發布的Ionic4是一次重大的升級,它第一次實現了與框架無關,不再必須使用Angular,你可以使用Vue,React,JQuery或者干脆不使用任何框架來進行Ionic開發,這一切都是因為可以使用Stencil來構建標準web components
React Native:React Native是Facebook 開源的跨平臺移動應用開發框架,使用JavaScript編寫原生移動應用,通過聲明式的組件機制來搭建豐富多彩的用戶界面。React Native 經過 3 年多的發展,已經比較成熟,雖然至今沒有發布 1.0 版本,但其社區很活躍
React Native所使用的基礎UI組件和原生應用完全一致。 基礎組件使用JavaScript和React的方式組合起來。
Weex:Weex 集成了 WeexSDK 之后,可以使用 JavaScript 和現代流行的前端框架來開發移動應用,使用同一套代碼來構建 Android、iOS 和 Web 應用。目前主要支持 Vue.js和 Rax這兩個前端框架。起步比較晚,社區沒有 React Native 活躍,資料和開源項目也相對較少
作者:YuRi_1
鏈接:https://www.jianshu.com/p/a7a77eb16a2a
來源:簡書 簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。
最新動態
常見問題百寶箱
A2014,有位學妹不顧家人反對,在上海這個國際化大都市謀了一個公眾號助理的職位。斗志昂揚地奮斗了 3 年,我眼看著她的內容駕馭能力突飛猛進,內容質量從三流到一流,職位
A文章主要分析了不同的視覺設計元素是如何影響網站用戶體驗,希望通過文章的解讀能夠對你的產品設計帶來些啟發。 也許是因為我在視覺設計上沒有太多經驗,我發現
A雙贏系統建站系統,三網同步,建站推廣一步到位雙贏系統建站系統,三網同步,建站推廣一步到位雙贏系統建站系統,三網同步,建站推廣一步到位雙贏系統建站系統,三網同步,建站推
Copyright 2013-2020 All Rights Reserved 武漢互贏網絡科技股份有限公司 鄂ICP備19027860號