跨平台开发模式盘点

一、说明

手机App的开发方式进入跨平台时代,但目前跨平台的开发方式很多,以至于App开发爱好者在进行技术选型时感到很迷茫,在此对App开发常见的几种方案做一个分析,包括原生开发、混合App、ReactNative、Weex、Flutter、uniapp等,希望能通过此文找到最适合我们项目的开发语言。

内容仅为自己学习过程中的浅薄心得,欢迎指正。

本文主要从“原生开发”和“跨平台技术”两种方式介绍,具体内容请见下文。

二、原生开发

原生应用程序是指某一个移动平台(比如iOS或安卓)所特有的应用,使用相应平台支持的开发工具和语言,并直接调用系统提供的SDK API。比如Android原生应用就是指使用Java或Kotlin语言直接调用Android SDK开发的应用程序;而iOS原生应用就是指通过Objective-C或Swift语言直接调用iOS SDK开发的应用程序。

技术类型

优势

缺陷

代表平台

原生开发

可访问平台全部功能(GPS、摄像头);

第三方SDK直接支持;可通过webView与网页交互;

速度快、性能高、可以实现复杂动画及绘制,整体用户体验好。

平台特定,开发成本高;

不同平台必须维护不同代码,人力成本随之变大;

内容固定,动态化弱,大多数情况下,有新功能更新时只能发版。

Android、iOS

三、跨平台技术

传统的纯原生开发已经不能满足需求。主要表现在如下两个方面:

  1. 业务需求变化快,开发成本变大。由于原生开发一般都要维护 Android、iOS两个

开发团队,版本迭代时,无论人力成本还是测试成本都会变大。

  1. 动态化内容需求增大。当需求发生变化时,纯原生应用需要通过版本升级来更新内容,但应用上架、审核是需要周期的,这个周期对高速变化的互联网时代来说是很难接受的,所以,对应用动态化(不发版也可以更新应用内容)的需求就变得迫在眉睫了。

3.1 跨平台技术演进

3.2 跨平台技术的分类

根据跨平台技术的原理,主要可分为如下三类:

  1. H5 + 原生( Cordova、  Tonic、微信小程序);
  2. Javascript开发+原生渲染( React Native、Weex);
  3. 自绘UI+原生(Flutter、 QT Mobile)。

3.3 H5 + 原生混合开发

这类框架的主要原理是将APP需要动态变动的一部分内容通过H5来实现,通过原生的网页加载控件 Webview

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值