随着智能手机的普及,移动端应用几乎成为每一个互联网产品的标配。在快速迭代的互联网战场中高效开发、低成本上线产品,是每一个应用开发团队追求的目标。此时,选择合适的应用类型和开发模式便相当重要。移动应用能够粗分为三种:原生应用(native app), 网页应用(web app,或HTML5 app),以及它们的混血儿——混合模式移动应用(hybrid app)。web
1.三类APP应用与测试机挑选浏览器
webAPP(网页APP):在浏览器中打开美团,这个页面就是网页APP。安全
hybridAPP(混合APP):微信,百度地图等。服务器
nativeAPP(原生APP):计算机,闹钟。微信
2.三种APP的优缺点:网络
网页应用(webAPP):app
优势:性能
1.不须要安装包,节约手机空间,生存在浏览器中的应用.测试
2.总体量级轻,开发成本低操作系统
3.不须要用户进行手动更新,由应用开发者直接在后台更新,推送到用户面前的都是全新版本,更便于业务的开展
4.基于浏览器,能够跨平台使用,基本上能够说是触屏版的网页应用。
缺点:
1.页面跳转费力,不稳定感更强。在网速受到限制时,不少时候出现卡顿或者卡死现象,交互效果受到限制
2.安全性相对较低,数据容易泄露或者被劫持.
原生应用(nativeApp):
优势:
1.提供最佳用户体验,最优质的用户界面,流畅的交互
2.能够访问本地资源
3.能够调用移动硬件设备,好比摄像头、麦克风等
缺点:
1.开发成本高。每种移动操做系统都须要独立的开发项目,针对不一样平台提供不一样体验;
2.发布新版本慢。下载是用户控制的,不少用户不肯意下载更新(好比说,版本发布到了3.0,但仍是有不少1.0的用户,你可能就得继续维护1.0版本的API)
3.应用商店发布审核周期长。安卓平台大概要1~3天,而iOS平台须要的时间更长
缺点:
1.APP的Web部分多是驻留在服务器上的网页,封装到App代码中,存储在设备本地。一方面是这个方法摈弃了任何离线可用性,由于设备与网络没有链接时,没法访问设备。
2.另外一方面,把Web代码封装到APP里面能够提升性能和可访问性,可是不容许远程更新。
3.webApp hybridApp nativeApp对比
4.三种APP对比图:
native:语言:object C(IOS),Java(Android),页面 存放于本地。
hybrid:语言:object(iOS)+HTML 受限于UIwebview
web:语言:HTML 优先于UIwebview 页面放于服务器