目前主流的app开发方式

目前主流的app开发方式移动应用开发三种方式比较随着H5标准的发布以及推广,使得移动应用的开发也受到了很大影响,出于效率、成本等等的原因,移动应用的开发不在完全依赖于“原生”。今天就简单总结一下目前的三大主流移动应用开发类型。APP,一般认为是mobileapplication,也就是移动移动应用程序。1.NativeApp:本地应用程序(原生App)NativeApp是一种基于智能手…

大家好,又见面了,我是你们的朋友全栈君。

移动应用开发三种方式比较

随着H5标准的发布以及推广,使得移动应用的开发也受到了很大影响,出于效率、成本等等的原因,移动应用的开发不在完全依赖于“原生”。  今天就简单总结一下目前的三大主流移动应用开发类型。  APP,一般认为是 mobile application,也就是移动移动应用程序。

目前主流的app开发方式

目前主流的app开发方式

1.Native App:本地应用程序(原生App)

Native App是一种基于智能手机本地操作系统如iOS、Android、WP并使用原生程式编写运行的第三方应用程序,也叫本地app。 常用语言当然就是 iOS:Objective-C swift, Android:JAVA,Windowsphone:C++

优点:1.打造完美的用户体验  2.性能稳定  3.操作速度快,上手流畅  4.访问本地资源(通讯录,相册)  5.设计出色的动效,转场  6.拥有系统级别的贴心通知或提醒  7.用户留存率高

缺点:1.分发成本高(不同平台有不同的开发语言和界面适配)  2.维护成本高(例如一款App已更新至V5版本,但仍有用户在使用V2, V3, V4版本,需要更多的开发人员维护之前的版本)  3.更新缓慢,根据不同平台,提交–审核–上线 等等不同的流程,需要经过的流程较复杂

2.Web App:网页应用程序(移动App)

Web App,顾名思义是指基于Web的应用,基本采用Html5语言写出,不需要下载安装。类似于现在所说的轻应用。基于浏览器运行的应用,基本上可以说是触屏版的网页应用。

优点:1.开发成本低  2.更新快  3.更新无需通知用户,不需要手动升级  4.能够跨多个平台和终端
缺点:1.临时性的入口  2.无法获取系统级别的通知,提醒,动效等等  3.用户留存率低  4.设计受限制诸多  5.体验较差

3.Hybrid App:混合应用程序(混合App)

Hybrid APP指的是半原生半Web的混合类App,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。  需要下载安装,看上去类似Native App,但只有很少的UI Web View,访问的内容是 Web 。  混合式 APP 目前有越来越火的趋势,一大原因是可以进行“热更新”,不再受限于审核、上线等等繁复的流程。

AppStore里的电商类、新闻类APP,视频类APP普遍采取的是Native的框架,Web的内容。如淘宝、腾讯新闻等等。

Hybrid App 极力去打造类似于Native App 的体验,但仍受限于技术,网速,等等很多因素。 

目前流行的四种跨平台app打包方式

发展历程:

在国外,最大的是Cordova(PhoneGap,2011年广泛流行),在2012年12月开源。
在国内,按时间顺序,有:2012年AppCan,2013年DCloud,2014年9月APICloud

1.Cordova

Cordova是Apache软件基金会的一个产品。其前身是PhoneGap,由Nitobi开发,2011年10月,Adobe收够了Nitobi,并且PhoneGap项目也被贡献给Apache软件基金会。Apache在2012年12月,发布了Cordova,截止到2015年12月,最新版面是3.0。

该框架的目标用户群体是原生开发者,其设计初衷是希望用户群体能够通过跨平台开发的方法降低原生开发的成本。为此,开发人员需要安装原生开发环境,配置工程,使用HTML5、CSS3、JS和原生SDK生成应用。

Cordova的优势很明显,可以使用的框架、原生接口、支持平台都很多。但是,外国人写的东西,公司使用后,出现的技术问题难以解决。同时,其在使用jQuery Mobile、Sencha Touch等前端框架的时候,有特效启动慢、页面切换慢、数据请求慢的特点。

2.AppCan

AppCan成立于2010年,2011年推出产品并测试,2012年正式推出品牌,2013年商业模式成型,2014年开发者注册约70w。AppCan不是开源平台,同时,企业版和部分插件是收费的。换句话说,AppCan只是一个卖软件的商业公司。我们认为:这会对其市场的占有率有着直接影响,闭源而没有垄断,所以前景不会太好。

3.DCloud

DCloud大部分产品开源,W3C会员单位,HTML5中国产业联盟的发起公司之一,在HTML5这个行业有一定的江湖地位。旗下四款产品:HBuilder、5+ Runtime、MUI、流应用都是弥补并扩展HTML5特性的产品。该公司的理念就是解决HTML5的性能、工具、能力三方面的问题。MUI是一款不错的前端框架,性能比 jQuery Mobile、Bootstrap好很多,主要区别:

  • 设计思路不同,MUI坚持用原生JS做,不依赖jQuery或者Angularjs。
  • MUI调用了5+ Runtime的底层原生加速,比不带原生加速的框架更快。

但是,DCloud毕竟是个新平台,发展才2年,新产品内部存在的Bug还需要很多的测试。在其官方社区中,不少开发者也在呼吁DCloud尽快完善文档和框架。 

4.APICloud

APICloud提供原生应用的功能模块(设备访问,界面布局,开放SDK等),开发者可以通过JS调用。前端工程师负责页面布局,UI展现,及简单的交互,原生模块负责性能方面和功能实现,两者结合形成一个完整的应用。同时APICloud提供了云数据库的功能,前端不必了解PHP,Node.js等后端语言,通过JS接口或Restful API实现数据库的增删改查。 

但是APICloud的更新速度很快,版本不太稳定。而且,它是为不懂APP开发的人士准备的,不适合科技公司和程序员。

weixin@zdkeep免费获取各种学习资料面试题及电子书籍,免费进群学习成长技术交流职位内推项目外包等。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138898.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月30日 下午5:36
下一篇 2022年5月30日 下午5:36


相关推荐

  • 万能游戏框架

    万能游戏框架万能游戏框架 nbsp nbsp nbsp nbsp 论学习方法 nbsp 游戏框架演变过程 nbsp 游戏开发难点 nbsp nbsp nbsp 代码组织架构 资源 网络 3D 数学 热更新 nbsp 拖拽式和查找式 nbsp 单例式 nbsp nbsp nbsp 常用设计模式讲解 nbsp nbsp nbsp nbsp 1 工厂模式 nbsp nbsp nbsp nbsp 2 策略模式 nbsp nbsp nbsp nbsp 3 观察者模式 nbsp nbsp nbsp nbsp 4 单例模式 nbsp nbsp nbsp nbsp 5 代理模式 nbsp nbsp nbsp nbsp 6 多例模式

    2025年12月8日
    8
  • tween.js 中文使用指南

    tween.js 中文使用指南tween js 英文使用指南首先来看个例子 hello tween js 补间 动画 来自 in between 是一个概念 允许你以平滑的方式更改对象的属性 你只需告诉它哪些属性要更改 当补间结束运行时它们应该具有哪些最终值 以及这需要多长时间 补间引擎将负责计算从起始点到结束点的值 例如 position 对象拥有 x 和 y 两个坐标 varposition x 1

    2026年3月19日
    3
  • 如何在系统中添加字体(添加字体到系统)

    笔者最近在使用win10自带的OneNote笔记本记笔记的时候,发现笔者电脑中没有华文新魏这个字体,最开始以为是OneNote不带有这个字体,经过一段时间的收集资料后发现,是笔者电脑win10系统中不带有这个字体,现将有关概念和字体安装方法做一下记录。字体是win10系统自己带有的,其他的软件自能从win10系统中用调用,而不是说字体是某些软件自带的,比如如果office的PPT中含有华文新魏这个字体,那么OneNote中就必然也含有华文新魏这个字体,并不会存在一个软件有这个字体而另一个软件不含有这个字体

    2022年4月17日
    66
  • CSP考试总结_考试总结300字

    CSP考试总结_考试总结300字t1模拟很难受,要加大这方面练习,要习惯用草稿理清思路t2和去年一样的东西,也是高精的坑,考前应该补一下高精t3比较正常,这种大数据结构只有考虑暴力,打正解很容易浪费时间并且上头t4无能

    2022年8月6日
    6
  • Error:java: Annotation processing is not supported for module cycles.异常解决

    Error:java: Annotation processing is not supported for module cycles.异常解决nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp 有一段时间没碰 Springboot 想起用到它的时候还是在去年 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp 由于要开始准备毕设了 所以最近开始部署 Springboot 的项目 结果在启动的时候 报了以下异常 Error java Annotatio

    2026年3月17日
    2
  • QTreeView样式[通俗易懂]

    QTreeView样式[通俗易懂]1、无样式2、设置被选中节点的字体颜色和背景颜色QTreeView::item:selected{color:#E7ECF0;background:qlineargradient(spread:pad,x1:0,y1:0,x2:0,y2:1,stop:0#667481,stop:1#566373);}3、设置悬浮节点的字体颜色和背景颜色QTreeView::item:hover{color:#ffffff;background:#ff0000;}4、设置节点的上下左右的内

    2022年5月29日
    340

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号