移动APP开发之技术选择

移动APP开发之技术选择APP开发种类目前主流的APP主要为iOS版本和Android版本。早期APP的开发,两个版本需要分开独立进行,分别使用Objective-C/swift和Java语言。这些APP也称为NativeAPP,即原生系统。由于NativeAPP开发成本高、难度大,随着技术的发展,出现了Hybrid(混合)APP开发,即支持跨平台或支持原生+H5相结合的APP。除此之外,还有一种称为WebAp…

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

APP开发种类

目前主流的APP主要为iOS版本和Android版本。早期APP的开发,两个版本需要分开独立进行,分别使用Objective-C/swift和Java语言。这些APP也称为Native APP,即原生系统。由于Native APP开发成本高、难度大,随着技术的发展,出现了Hybrid(混合)APP开发,即支持跨平台或支持原生+H5相结合的APP。除此之外,还有一种称为Web App的移动端Web系统,其完全使用Web技术进行开发,与操作系统无关。原生、Hybrid及Web APP之间关系如下图所示:
这里写图片描述

开发种类的比较

开发种类 优点 缺点
原生Native (1) 可访问手机所有功能(GPS、摄像头);(2) 性能高、用户体验最好(3) 可离线使用; (4) 支持图形和动画; (1) 开发及维护成本高; (2) 支持设备有限(系统只能运行在一个平台上);(3) 新版本需重新下载应用;
Web (1) 基于浏览器运行,可跨平台; (2) 开发工具选择多; (3) 不需要安装,控制更新容易;(4) 对开发人员要求相对低;(5) 开发成本低; (1) 只能使用有限的硬件设备能力; (2) 安全性低; (3) 必须联网; (4) 用户体验不是很好;(5) 性能低;
混合Hybrid (1) 可以混合使用原生和Web技术;(2) 可以跨平台;(3) 开发成本比原生低;(4) 可以利用手机的多种功能; (5) 可离线使用; (1) 用户体验不如原生; (2) 性能稍慢;(3) 技术还不是很成熟;

混合开发方式

方式一

这里写图片描述

方式二

这里写图片描述

比较

名称 优点 缺点
Cordova 可以跨平台;框架比较成熟;学习成本较低;基本不需要Android开发技能;对原生的特定要求,可以使用已有插件,也可以自定义开发 框架较重;性能可能稍差;中文参考文档少;自定义插件的开发,需要由原生开发人员完成
Android+H5 框架量级较轻;可以使用全部硬件功能;采用MVP模式,可以简化开发;可选前端框架比较多;性能比较好 不能跨平台;学习成本较高(需要了解android开发及前端框架);框架繁多,多数不成熟,可能会遇到一些陷进

其它

Android原生APP的开发有很多开源的框架可以使用,很多都可以从GitHub上找到。比如MVP架构的mvpart,以及基于事件的异步编程库RxJava2,以及前端框架vasSonic等。

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • aarch64 poky linux,aarch64pokylinuxgcc:错误::没有这样的文件或目录

    aarch64 poky linux,aarch64pokylinuxgcc:错误::没有这样的文件或目录我正在尝试将mlpack包含到我的yocto构建中。如果不启用python绑定,我的配方烘焙成功。但是在构建python绑定时,我得到了以下错误:aarch64-poky-linux-gcc-march=armv8-a-mtune=cortex-a57.cortex-a53–sysroot=/builds/build-h3/tmp/sysroots/h3ulcb-DNDEBUG-g-O…

    2022年8月31日
  • 表单样式模板_商品表格模板

    表单样式模板_商品表格模板特殊项:用户中心左侧导航:frontend.base.php(增删导航可以在这里改  DW中大约561-760行)apply.index.html                                  申请开店页article.index.html                                 文章分类列表页(包括商城公告、商城公告及其他自建分

    2022年11月3日
  • LAMP环境跟LNMP环境有什么不同,主要用什么地方

    LAMP环境跟LNMP环境有什么不同,主要用什么地方

    2021年9月24日
  • [Python_3] Python 函数 & IO

    [Python_3] Python 函数 & IO

    2021年6月15日
  • 新服务器部署完整流程

    新服务器部署完整流程配置服务器的登录一般不要把root用户给其他人使用,而是创建一个普通用户账号,例如我现在创建一个用户名叫做“laowang”的账号,并且配置它的登录密码。为了服务器的安全性,root用户登录配置成秘钥登录安装Docker对于CentOS6,可以使用EPEL库安装Docker,命令如下:$sudoyuminstallhttp://mirrors.yun-idc.com/…

    2022年6月18日
  • 黑群晖DSM 6.x 配置文件grub.cfg修改 mac地址/sn等修改

    黑群晖DSM 6.x 配置文件grub.cfg修改 mac地址/sn等修改新的DSM6.x配置文件和以前的XPEnoboot的配置文件不一样了,我们可以通过OSFMount虚拟光驱软件打开img后再修改。安装完成后运行OSFMount点击左下角-Mountnew,选择下载的img镜像。(注意:img镜像目录必须是英文或数字,不能是中文)选择Partition0,点击OK再把下面Read-onlydrive的选项去勾后点击OK。在OSFMount软件里双…

    2022年5月9日

发表回复

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

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