前言

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. [细品java]ThreadLocal源码学习

    ThreadLocal是线程局部变量,其中保存了特定于该线程的值.每个线程都拥有一份独立的副本值,即每个线程修改变量值不影响其他线程该变量的副本值.这些特定于线程的值保存在Thread对象中,当线程终 ...

  2. 内存区划分、内存分配、常量存储区、堆、栈、自由存储区、全局区[C++][内存管理][转载]

    http://www.cnblogs.com/JCSU/articles/1051579.html 一. 在c中分为这几个存储区1.栈 - 由编译器自动分配释放2.堆 - 一般由程序员分配释放,若程序 ...

  3. P3701 「伪模板」主席树

    题目背景 byx和手气君都非常都非常喜欢种树.有一天,他们得到了两颗奇怪的树种,于是各自取了一颗回家种树,并约定几年后比一比谁种出来的树更加牛x. 题目描述 很快,这棵树就开花结果了.byx和手气君惊 ...

  4. Alternate Task UVA - 11728 (暴力。。分解质因子)

    题意: 输入一个正整数S,(S  <= 1000)求一个最大的正整数N,使得N的所有正因子之和为S. 解析: ..求1000以内的所有数的正因子和 ...输出.. #include <io ...

  5. PE文件解析 基础篇

    PE文件解析 基础篇 来源 https://bbs.pediy.com/thread-247114.htm 前言 之前学习了PE格式,为了更好的理解,决定写一个类似LoadPE的小工具. 编译器是VS ...

  6. 手机H5显示一像素的细线

    手机屏幕分辨率的问题,导致h5的1像素看起来比较粗,网上找了一个办法,记下来 主要就是通过scale来缩小宽度 .line1px{     border: none;     border-botto ...

  7. 关于Swift中的泛函数find的问题

    对于一个数组Array,我们往往需要判断其是否包含某个子项,又或者要查找某个子项是否在这个数组中. 假设有这样一个包含坐标的数组 var pointArray:[CGPoint] = [CGPoint ...

  8. Nagios通过企业微信报警

    主要分两部分进行: 注册企业微信,自建应用,获取与发送消息相关的信息: 编写调用微信API脚本(bash),配置Nagios微信报警: 一.企业微信 1.注册企业微信:https://work.wei ...

  9. BZOJ2142 礼物 【扩展Lucas】

    题目 一年一度的圣诞节快要来到了.每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物.不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收到的礼物会越多.小E从商店中购买了n件礼物, ...

  10. 使用EntitysCodeGenerate

    http://bbs.csdn.net/topics/360256700 public DataSet xxx(DateTime start, DateTime end, string type)   ...