前言

React Native是最近非常火的一个话题,想要学习如何使用它,首先就要知道它是什么。

好像面对一个新手全面介绍它的文章还不多,我就归纳一下所有的资料和刚入门的小伙伴一起来认识它~

将从以下几个方面来介绍它:

1、React Native的定义

2、React Native的优缺点

2、学习React Native需要掌握的知识


React Native的定义

一句话就是:一款专门用于App的JS框架。

React Native 结合了 Web App和 Native App的优势,使用 JavaScript 和 React 来开发 iOS 和 Android 原生应用即Mobile App。

   注意:

使用React Native最后编译的还是一个原生应用。

这就是为什么 React Native 自称:

Learn once,Write anywhere!

React Native 希望前端开发者学习完 React 后,能够用同样的语法、工具等,分别开发安卓和 iOS 平台的应用并且不用一行原生代码。

总结:
React Nativ是利用脚本语言进行原生平台开发的一次成功尝试,降低了前端开发者入门移动端的门槛,一定业务场景下具有独特的优势,但是几乎不可能取代原生平台开发。 补充:
这里涉及到APP的开发模式,一共有三种,分别是Web App、Hybird App和 Native App。
具体的概念不细说了,简单的做一下对比,大家就会有简单的概念。




 React Native的优缺点

优点

  1. 复用了 React 的思想,有利于前端开发者涉足移动端
  2. 能够利用 JavaScript 动态更新的特性,快速迭代
  3. 相比于原生平台,开发速度更快,相比于 Hybrid 框架,性能更好
  4. 不用Webview,彻底摆脱了Webview让人不爽的交互和性能问题
  5. 较强的扩展性,这是因为Native端提供的是基本控件,JS可以自由组合使用
  6. 可以直接使用Native原生的「牛逼」动画

缺点

  1. 做不到 Write once, Run everywhere,也就是说开发者依然需要为 iOS 和 Android 平台提供两套不同的代码,比如参考官方文档可以发现不少组件和API都区分了 Android 和 iOS 版本。即使是共用组件,也会有平台独享的函数。

  2. 不能做到完全屏蔽 iOS 端或 Android 的细节,前端开发者必须对原生平台有所了解,加重了学习成本。而对于移动端开发者来说,完全不具备用 React Native 开发的能力。

  3. 由于 Objective-C 与 JavaScript 之间切换存在固定的时间开销,所以性能必定不及原生

  4. 安卓环境运行卡,坑多。


学习React Native需要掌握的知识

1、es6的知识。知道JS新语法,不然看到=>()和.then等等,你会一脸懵逼。ES6也称ES2015,是JavaScipt语言的较新的一种标准,在React Native开发时,使用这种标准。

推荐网站:

 2、因为React Native可以看作是 React.js 在移动上的应用,所以还需要掌握react,有助于你加深理解。
推荐网站:

React Native新手入门的更多相关文章

  1. React Native小白入门学习路径——二

    万万没想到,RN组仅剩的一个学长也走了,刚进实验室没几天就被告知这样的事情,一下子还真的有点接受不了,现在RN组就成了为一个没有前辈带的组了,以后学习就更得靠自己了吧.唉,看来得再努力一点了. 这一周 ...

  2. React Native 从入门到原理一

    React Native 从入门到原理一 React Native 是最近非常火的一个话题,介绍如何利用 React Native 进行开发的文章和书籍多如牛毛,但面向入门水平并介绍它工作原理的文章却 ...

  3. React Native基础&入门教程:初步使用Flexbox布局

    在上篇中,笔者分享了部分安装并调试React Native应用过程里的一点经验,如果还没有看过的同学请点击<React Native基础&入门教程:调试React Native应用的一小 ...

  4. React Native小白入门学习路径——五

    React Native小白入门学习路径--五 序 "哦天呐!" 这句话成了我在实验室的口头禅, 老师可能觉得我们都是大神吧,都还在看着基础就给布置了那么多任务:写一个RN的TDD ...

  5. React Native 从入门到原理

    React Native 是最近非常火的一个话题,介绍如何利用 React Native 进行开发的文章和书籍多如牛毛,但面向入门水平并介绍它工作原理的文章却寥寥无几. 本文分为两个部分:上半部分用通 ...

  6. React Native开发入门

    目录: 一.前言 二.什么是React Native 三.开发环境搭建 四.预备知识 五.最简单的React Native小程序 六.总结 七.参考资料   一.前言 虽然只是简单的了解了一下Reac ...

  7. React Native (一) 入门实践

    上周末开始接触react native,版本为0.37,边学边看写了个demo,语法使用es6/7和jsx.准备分享一下这个过程.之前没有native开发和react的使用经验,不对之处烦请指出.笔者 ...

  8. React Native基础&入门教程:调试React Native应用的一小步

    React Native(以下简称RN)为传统前端开发者打开了一扇新的大门.其中,使用浏览器的调试工具去Debug移动端的代码,无疑是最吸引开发人员的特性之一. 试想一下,当你在手机屏幕按下一个按钮, ...

  9. React Native小白入门学习路径——三

    迷茫,真的迷茫. 或许是自己努力的还不够吧,在学习的过程中遇到了很多问题,自己尝试借助搜索引擎解决问题,无奈国内的教程写的还很基础,涉及到稍微具体一点的问题时讲解就比较少更新也比较慢,绝大多数还是很早 ...

随机推荐

  1. js & listen mouse click

    js & listen mouse click how to listen mouse click in js https://www.kirupa.com/html5/mouse_event ...

  2. unix常用命令记录

    1. ls 命令:列出文件及文件夹 ls -a 列出目录下的所有文件,包括以 . 开头的隐含文件.ls -b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出.ls -c 输 ...

  3. https和http/2

    http://geek.csdn.net/news/detail/188003 HTTPS协议原理分析 HTTPS协议需要解决的问题 HTTPS作为安全协议而诞生,那么就不得不面对以下两大安全问题: ...

  4. c++11 继承构造

    c++11 继承构造 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> #includ ...

  5. Chapter8(IO库) --C++Prime笔记

    1.IO对象不能拷贝或对IO对象赋值,进行IO操作的函数通常是以引用方式传递和返回流. 2.一个流一旦发生错误,其上的后续的IO操作都会失败.代码通常应该在使用一个流之前检查它是否处于良好状态.确定一 ...

  6. Dockerfile编写注意事项

    转载自:https://blog.fundebug.com/2017/05/15/write-excellent-dockerfile/ 一.目标 更快的构建速度 更小的Docker镜像大小 更少的D ...

  7. python基础之面向对象02

    ---继承 当我们定义完成某个类时,可以再定义一个新类,新类可以继承第一个类.新类被称为子类,而被继承的类称为父类/基类/超类. 继承就是子类继承父类的属性和方法(注意是类属性和类方法). 继承可以使 ...

  8. Python之socket(套接字)补充

    IO多路复用 I/O多路复用指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作. Linux Linux中的 select,poll,e ...

  9. LINUX 线程

    1.使用进程技术的优势(1)CPU时分复用,单核心CPU可以实现宏观上的并行(2)实现多任务系统需求(多任务的需求是客观的)2.进程技术的劣势(1)进程间切换开销大(2)进程间通信麻烦而且效率低3.解 ...

  10. 安装MySQL5.7由于 Redistributable导致失败

    今天上午安装MySQL5.7时一直提示 1: Action 10:59:21: INSTALL. 1: 1: MySQL Server 5.7 2: {F08E9C75-A42E-4962-8760- ...