1、业内哪些知名公司团队使用了ReactNative
2、他们是如何应用的
3、带来什么好处
1、业内哪些知名公司团队使用了ReactNative
a.天猫ipad端大促页面
b.饿了么蜂鸟众包App
c.携程部分页面
d.去哪儿部分页面
e.QQ、QQ空间、QQ音乐几个页面
ReactNative国内使用的第一家团队就是天猫团队,他们的实验是在天猫ipad端大促页面使用ReactNative来进行开发,是国内最早踩坑吃螃蟹的团队。饿了么蜂鸟众包App是国内首批使用ReactNative在Android iOS同步上线的,类似于达达配送,是属于众包的配送平台,针对配送人的APP。携程使用的比天猫晚了一些,但是使用的面比较大,据说内部在大力推广ReactNative,可以说是全面拥抱。去哪儿用ReactNative比携程少一些。QQ、QQ空间、QQ音乐、全民K歌腾讯大礼包大家都是可以看到的,在facebook的showcase里面可以看到,全民K歌用ReactNative用的更多一些,基本上把H5的页面都用ReactNative重新写了一下,除了这几个例子以外还有不少团队在使用ReactNative,我们就不一一点评了。让大家放心,国内这些知名企业都在用,我们完全是可以大胆去用的。
2、他们是如何应用的
a.天猫团队是国内首批使用ReactNative的
b.携程基于ReactNative开发了moles框架
c.饿了么蜂鸟众包使用ReactNative与原生混合开发
d.腾讯使用ReactNative源码编译的方式进行开发
天猫团队是国内首批使用ReactNative的,虽然当初只有一个大促的界面在iOS端使用了ReactNative。他们接触ReactNative接触的非常早,也给ReactNative库贡献了不少代码,给ReactNative团队进行过交流,他们是首批使用ReactNative的,想尝试动态发版、动态更新,在ReactNative出现的时候,国内还没有团队尝鲜的时候,天猫团队跨出了这一步,他们用实践证明了,在ReactNative iOS版是完全可行的,并且是具备一定的工程能力的,这个时间点相对要早一些,后面天猫用ReactNative发现在电商里面应用比他们想象重一些,大家都知道阿里是有很强的研发团队的一个公司,他们借鉴了ReactNative做了一个叫weex的框架,也开源出来了,也是一个不输于ReactNative的一个框架,天猫后面用weex更多一些。
携程用ReactNative比天猫更晚一些,但是携程用了之后感受到了它的好处,携程框架组基于ReactNative开发了一个moles框架做了哪些改变呢:框架部分打包和业务部分打包的拆分,moles就是在ReactNative的基础上加了一层兼容,可以兼容到web层面,3端兼容,页面降级。携程是大力拥抱ReactNative的,moles框架也是迟早要开源的,大家如果感兴趣的话可以持续关注。
饿了么蜂鸟众包使用ReactNative与原生混合开发。当初的情况是这样的,刚启动了蜂鸟项目,项目需要快速迭代上线,现状是Android开发者比iOS开发者多了几个,Android开发者就开始起头,做了ReactNative,可以保证当有一个需求在Android上线的时候,iOS也可以同步上线,Android和iOS公用了一个ReactNative库,分别给双方原生提供统一API接口,自己封装了一个框架层,也支持热更新、发版版本控制...这些都是后面慢慢建立起来的,也是最早ReactNative和Android混合开发的公司。
腾讯使用ReactNative源码编译的方式进行开发。Q空间上面使用的一两个页面是怎么使用的呢,他们把ReactNative源码拉下来之后进行源码编译,把源码进行改动,在改动后的上进行开发,针对他们的产品进行了一些修复和优化,这样做有些不好,太重,后期更新是不好更新的,ReactNative更新基本上都是2周一更新很快的,对技术团队要求比较高,在使用源码开发的时候要解决什么问题需要明确,他们认为解决了他们非常刚需的问题,然后使用这种方式开发了,这种方式开发很有难度的,如果只是用源码编译不进行改动,不如直接去依赖ReactNative来去开发,腾讯是进行了改动。
天猫是慢慢的转向了weex,携程是全面拥抱了ReactNative,饿了么蜂鸟众包使用ReactNative与原生混合开发大大加快了项目的开发进度,腾讯别出心裁使用了源码编译进行了腾讯化的定制和开发。
3、带来什么好处
a.跨平台
b.高混合开发,新型Hybrid开发方式
c.性能接近原生
d.开阔思路进一步研究
饿了么为什么要使用ReactNative,跨平台,一套代码跑在多端,只要稍微做下兼容就可以同时跑在Android和iOS,解决的一个问题就是需求太快,更新跟不上,研发人员不够用。跟之前的Hybrid开发方式不同,不依赖webview,更适合跟原生进行混合,和Cordova、Ionic都是不一样的。在腾讯、携程、天猫团队在做ReactNative的时候都去做页面性能测试,看看跟原生到底相差多少,这个东西接近原生但是还得看性能优化,虽然有虚拟DOM在保证,但是如果过度渲染还是需要去优化的,ReactNative优化性能的空间还是很大的,用的好性能接近原生是没有问题的,几乎感受不出差别。天猫用完以后发现对电商太重自己做了个weex,携程也是做了很多的改变做了个moles,腾讯也在使用的时候进行了腾讯化。
最后总结一句,ReactNative再好,使用的时候是得看团队优化的,只是使用不去研究是不行的!
