1月5日云栖精选夜读:2017年,阿里巴巴
625 2023-04-03 03:24:17
版权声明:本文为博主原创文章,未经博主允许不得转载。
PS:转载请注明出处作者: TigerChain地址: www.jianshu.com/p/717ccdd7c…本文出自 TigerChain 简书 ReactNative 系列
教程简介
本篇教程适合新手阅读,老手直接略过
2、教程难度
初级
从目前来说,手机 APP 分为三个大类:native,hybird,webapp
从以上三类来说,各有各个好处,简单说一下:
综上,如果是对性能要求不是非常高的公司「我就遇到过,客户明确提出不能使用 H5 或 Hybrid 来开发」,那么 hybrid 是一个不错的选择。
既然有了 Hybrid 为什么还要搞个 RN 呢?我们知道 FaceBook 对世界上的 JS 类库都不鸟「觉得的使用不爽」,就自己造了一个 React ,FaceBook 就想 React 的一些思想和精髓能不能用到手机端开发「既有前端的开发效率,又有 native 的体验」,经历了若干磨难--最后 React Native 应运而生。
用官方的话说,ReactNative「以下简称 RN」就是使用 JS 和 React 来构建原生 APP。
从以上解释我们可以知道,使用 RN 要掌握 JS 和 React,其实 JS 不是说要非常精通的掌握才可以学 RN。
PS:这说明一点 RN 不是 Hybrid ,它是通过 JS 来直接调用原生组件达到高性能
优点:
缺点:
目前来说 RN 在 IOS 上的坑较少, Android 来说较多「特别是国产机型乱七八糟的状况下,但是总归是有问题方法解决的」,但是这不是阻止我们去学习的借口,因为 RN 背后是强大的 FaceBook 在支撑着,而且有着活跃的社区。看看下面使用者,你就更有信心了。
##三、RN 和 Native
RN 和 Native「原生」 相比
性能:
无限接近原生「目前来说肯是达不到原生体验的」,如果你觉得性能不好,完全可以使用原生代替,RN 调用即可
付出更少,得到更多
原本做一款 APP 至少要两名工程师「 Android 和 IOS」,并且开发效率不一致「一个字慢」,使用 RN 大量的代码可以得到利用,技术栈统一,效率明显提高,并且一个人就可以做出 IOS APP 和 Android APP
热加载
编写代码开户热加载,保存界面自动刷新,就有点像 Android 里面的 Instant Run 功能
代码共用「核心代码」
在 web android IOS 中 核心代码都是共用的,只需要做少许修改就可以使用 ,UI 代码库对于 Android 和 IOS 来说几乎是一样的。
我们从官网载图一张图来看看
我们可以看到 FaceBook 自家在使用,特斯拉也在使用,手Q 也在使用...
这里没有截完整,还有京东 APP, 天猫 APP ,手机百度等。具体也可以看官方具体内容:facebook.github.io/react-nativ…
国内技术看 BAT 目前 BAT 都在使用 RN,我们有什么理由不掌握 RN 呢,有 native 开发经验的人更占优势,没有 native 开发经验的人也没什么问题,人人都能学 RN 。让我们开启 RN 之旅吧。