移动App开发的几种方式
- 原生App,即NativeApp
- WebApp
- HybridApp,(
完全依赖原生App中的WebView组件
,本质上只是对WebView组件做更多的扩展,为它提供更多的api,由原生做主导) - 跨平台开发( 由web做主导,
编译转成原生app的Objective-C或Java代码
) - 其他类型(各大小程序/快应用等等)
分类参考:点我查看
01-移动App开发-NativeApp介绍和特点
定义:传统的原生App开发模式,有iOS和Android两大系统,需要各自语言开发各自App。
优点:性能和体验都是最好的
缺点:开发和发布成本高
应用技术:Swift,OC,Java
常识: 安卓/iOS/Web 基本都使用Mac进行开发
02-移动App开发-WebApp介绍和特点
定义: 移动端的网站,常被称为H5应用,说白了就是特定运行在移动端浏览器上的网站应用。一般泛指 **SPA(Single Page Application)模式开发出的网站,与MPA(**Multi-page Application)对应。
优点:开发和发布成本最低
-
开发成本低,可以跨平台,调试方便,开发速度最快
web app一般只需要一个前端人员开发出一套代码,然后即可应用于各大主流浏览器(特殊情况可以代码进行下兼容),没有新的学习成本,而且可以直接在浏览器中调试
-
维护成本低
同上,如果代码合理,只需要一名前端就可以维护多个web app
-
更新最为快速
由于web app资源是直接部署在服务器端的,所以只需要替换服务器端的文件,用户访问是就已经更新了(当然需要解决一些缓存问题)
-
无需安装App,不会占用手机内存
通过浏览器即可访问,无需安装,用户就会比较愿意去用
缺点:性能和体验是最差的,受到浏览器处理能力的限制
-
性能低,用户体验差
由于是直接通过的浏览器访问,所以无法使用原生的API,操作体验不好
-
依赖于网络,页面访问速度慢,耗费流量
Web App每次访问都需要去服务端加载资源访问,所以必须依赖于网络,而且网速慢时访问速度很不理想,特别是在移动端,如果网站优化不好会无故消耗大量流量
-
功能受限,大量功能无法实现
只能使用Html5的一些02-特殊api,无法调用原生API,所以很多功能存在无法实现情况
-
临时