移动端跨平台解决方案hybrid、react-native、weex和flutter的比较(自己的理解)

移动端跨平台开发从最初的hybrid到react-native、weex,再到最近Geogle新推出的flutter移动UI框架,体验和性能越来越接近原生应用,这里我们分析一下这几种开发方式的利弊。个人经验,不到位的地方还望不吝赐教。

这几种APP开发方式中自己亲身体验过的有hybrid、weex、flutter这三种,其中最为熟悉的是weex开发模式。

大家都知道hybrid即为web+native的混合开发模式,优点就是拥有了web开发的服务端发布即可更新的便捷性,Android和iOS两端可以共用代码,并且web技术已经非常成熟,开发效率也会很高。缺点就是众所周知的性能相比native有很大的不足,且不同机型和系统版本下的兼容性较差。

react-native与weex开发APP是很类似的,两者都是将对应的react源码或者vue源码编译成js文件,在native通过Android和iOS的渲染引擎进行解析渲染,最终以native界面的方式进行展示,这种开发方式同样拥有hybrid的跨平台开发的优点,并且相比于hybrid性能要好很多。

weex和react-native两种开发方式的区别:

weex的核心思想是write one,run anywhere。即写一套代码,各个平台都有可以运行。

react-native是learn once,write  anywhere。即学习一种语言,可以编写各个平台。

由此可见,weex开发在理论上是更加高效的,但是鉴于现在react-native社区相较于weex社区要活跃很多,有很多的开源组件、模块和解决方案,当前实际开发的话weex不一定会比react-native更有效率。

weex还有一个我认为很吸引人的实现热部署更加便捷,服务端发布js文件后,客户端用户即可无感知更新,且不需要开发人员做很多的处理,至多是为了用户体验,添加一些缓存策略。

而flutter开发个人认为在未来会统一移动端的开发,其与weex和react-native相比性能更佳,且对iOS和Android两端的兼容性也更好了,社区也非常活跃,不过应该还需要一段时间的完善和积累,目前仍然不具备热部署的能力并且与weex相比目前还不兼容web端。不过在flutter的规划中可以看到其开发团队在未来会逐渐支持这两项能力。

正如在weex的一个开发群中看到的以为程序员朋友所说,移动端跨平台开发的现在可能是weex的或者reac-native的,但是未来一定是flutter的。

并且其他开发方式中基本都能支持hybrid的方式,因此这里就不在与其进行比较了。

终上所述,结合自己的使用经验,我认为当前weex与react-native相比开发效率会更高,但是是在有原生开发支持的基础上。并且weex与react-native相比我认为更加灵活,所以我们选择的是weex的开发方式。

flutter虽然说性能高,但是现在的实践案例仍然比较少,期待它的完善。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一拳小和尚LXY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值