美文网首页
React native 简介

React native 简介

作者: Eternaldream | 来源:发表于2017-07-27 22:33 被阅读81次

    现阶段,在移动开发中,原生(Native)虽然开发成本很高,但是仍然是必须的,因为Web App的用户体验仍无法超越原生;
    原生(Native)APP开发的优势:

    1. Native的原生控件有更好的体验;
    2. Native有更好的手势识别;
    3. Native有更合适的线程模型,尽管Web Worker可以解决一部分问题,但如图像解码、文本渲染仍无法多线程渲染,这影响了Web的流畅性.

    一: 什么是React Native?

    React Native是Facebook在F8大会开源的JavaScript框架,(2015年9月15日发布)可以让广大开发者使用JavaScript和React开发跨平台的移动应用.在短短不到一年的时间里,它成为手机端必不可少的开发模式之一。 它充分利用了Facebook现有的业务轮子, 其核心设计理念:既拥有Native的用户体验、又保留React的开发效率,目前,React Native基本完成了对多端的支持,实现了真正意义上的面向配置开发: 开发者可以灵活的使用HTML和CSS布局,使用React语法构建组件,实现:Android, iOS 两端代码的复用,核心设计理念: 既拥有Native的用户体验,又保留React的开发效率.

    二: React Native的特点:

    1. 使用了 Virtual DOM(虚拟DOM)
    2. 提供了响应式(Reactive)和组件化(Composable)的视图组件
    3. 将注意力集中保持在核心库,伴随于此,有配套的路由和负责处理全局状态管理的库.


      image

    三: React Native的优势:

    1. 跨平台开发

    运用React Native,我们可以使用同一份业务逻辑核心代码来创建原生应用运行在Web端,Android端和iOS端;

    2. 追求极致的用户体验

    实时热部署

    3. learn once,write everywhere

    4. 社区活跃,除了Facebook之外,GitHub上有很多第三方的团队、个人、公司开发贡献了很多非常优秀的第三方组件,它的社区是非常健康、非常活跃的。

    React Native不强求一份原生代码支持多个平台,Java的是(Write once, run anywhere)

    React Native的劣势:

    1. RN框架原生并不支持Web端;

    2. RN框架官方并不支持热更新;

    3. Facebook给出的官方RN API不能完全满足业务快速的发展,它只给了一些很基础的API,但业务中经常会用到的一些多媒体,比如录音、录像、视频播放文件以及文件上传、压缩、加密等等,这些都没有提供。

    4. 尽管RN框架性能非常不错,比H5好很多。实际上经过真正的业务开发后,发现90%的场景下RN的性能非常棒,可以满足我们的业务需求;但是在另外的10%的场景下,特别是一些交互非常复杂、页面非常复杂、需要频繁的更新、需要一些手势交互的场景,RN仍有些内存跟性能的瓶颈。

    4. 以下是react-native 原理图

    image

    四: React Native开发注意事项:

    1.最新版的React Native仅支持iOS 8.0 以上, Android仅支持Android 4.1 以上的版本

    2.初学者建议选择:

    • 功能适中,交互一般,不需要特别多的系统原生支持;
    • 对于部分复杂的应用,可以考虑原生+React Native混合开发

    github地址: https://github.com/facebook/react-native

    英文官方文档:
    http://facebook.github.io/react-native/docs/getting-started.html

    中文文档:
    https://reactnative.cn/

    三端解决方案

    蚂蚁金服: https://mobile.ant.design/index-cn

    相关文章

      网友评论

          本文标题:React native 简介

          本文链接:https://www.haomeiwen.com/subject/sjbtlxtx.html