关于React Native的开发,当中一个问题是缺少好用的IDE,有些人说不就是JS么,搞一个记事本也就写了,那样尽管牛逼,但事实上还是非常头大的,有一款好的IDE还是能提升开发效率的,这里对几个还算能用的IDE进行比較。大家能够选择自己喜欢的IDE用于RN应用的开发。

1.Facebook推荐IDE——基于Atom的nuclide

nuclide是Facebook在开源React Native框架时同一时候开源的所谓官网的IDE,实际上是基于Github公布的开源编辑器Atom开发的React开发插件。基本界面例如以下:

个人感觉Sublime、VS Code还有这个近期被炒的火热的Atom,界面都非常像,并且基本都是靠插件插出来的。而Atom事实上就是用Node.js和WebKit搞出来的基于浏览器的桌面应用,Atom安装后还会附带安装apm(类似npm的包管理器)。

atom的安装能够直接在:https://github.com/atom/atom/releases/latest选择适合自己系统的安装包下载安装,比較简单。

nuclide能够在:https://github.com/facebook/nuclide依据官方的Readme进行安装,比較慢,耐心等。

或者能够在atom安装完毕之后。使用atom自带的apm进行安装,如:apm install nuclide

atom的优势在于轻量和Facebook的支持,以及各种各样Sublime没有的插件。因为有Facebook的支持,对React.js和React Native的支持比較好,不管是格式化还是高亮标记、代码提示。在完整安装nuclide及一些辅助插件后,都是比較友好的,喜欢这一风格的程序员能够试试这款比較新的编辑器,但一个非常严重的问题是。Atom基于浏览器。性能是非常严重的问题。

2.永恒的经典——Sublime

做JS的FE必定都知道Sublime,这款已经有一定历史的编辑器经过一系列的插件改装,一样能够对React Native支持良好,加上Sublime众多的快捷键、命令支持,能够使开发效率大幅度提升。

代码提示功能:

性能和Atom比当然是没的说。推荐安装几个插件:JSX、React Teamplate、react-native-snippets、ReactJS Snippets、SublimeLinter-jsxhint、Babel、Babel Snippets、Emmet、React ES6-Snippets,这几个插件能够支持React的JSX语法。并进行高亮提示。同一时候也可进行排版。效果和装了nuclide的Atom不相上下,是很给力一款编辑器了。

插件安装方法,Package Control -> Install Package,输入react。选中并安装

提示:须要***

3.全能型选手——WebStorm 11

有人说Intelij系列IDE非常重,非常慢,界面还丑。事实上还得看需求,我就挺喜欢。Android Studio、IDEA、WebStorm都是一样的键位和界面布局,学习成本非常低。使用非常顺手,并且WebStorm自带的插件也比較好用,提示非常智能。不用安装什么插件就能上手开发了。对于React Native开发不好的一点就是JS的格式化比較奇怪,和Sublime、nuclide都不一样,下图是WebStorm:

以下是nuclide、Sublime:

假设熟悉WebStorm和Intelij系列IDE的程序员,选择WebStorm进行React Native开发也是不错的选择。

4.其它建议学习的技术

1.HTML+CSS3或Android的XML布局、WPF的XAML

因为React Native採用JSX的形式进行界面的设计。这样的方式类似于HTML,但又比其更严格。所以有Android和WPF开发经验的程序员。可能更easy将XML和XAML的思想引入JSX中,并且React Native的布局样式。类似CSS3。有非常多从CSS3中发展而来的字段和属性。所以建议学习一下CSS3。

2.React.js

毕竟React Native是从React.js发展而来的,仅仅是一个是面向Web一个面向client,学习React.js有助于了解这样的开发思想的核心,尤其是组件生命周期,
getDefaultProps、getInitialState、componentWillMount、render、componentDidMount这几个过程很重要,除此之外,事件处理、数据绑定等功能也是差点儿一模一样。參考React.js的原理和流程。很有助于理解React Native。

3.Node.js、ES6

React Native的代码结构来源于Node.js,当中require、exports的思想也是很经典的,再说了,如今Node.js这么火,Win10 IoT都兼容了,你还有什么理由不学Node.js?
而React Native用了非常多基于ES6的思想来构建API,比方fetch。所以,学习一下新公布的ES6,不光是React Native,对其它JS开发也是必须的。

4.Android、iOS的JavaScript Bridge技术

React Native内部实现了一套自己的JS通信技术,可以提供高效的通信,从而实现APP的动态改变、高效展示,所以,有必要了解React Native的底层通信技术,以便后期对APP进行优化



React Native入门——IDE及其它相关基础技术的更多相关文章

  1. React Native 入门基础知识总结

    中秋在家闲得无事,想着做点啥,后来想想,为啥不学学 react native.在学习 React Native 时, 需要对前端(HTML,CSS,JavaScript)知识有所了解.对于JS,可以看 ...

  2. React Native入门——布局实践:开发京东client首页(一)

    有了一些对React Native开发的简单了解,让我们从实战出发.一起来构建一个简单的京东client. 这个client是仿照之前版本号的京东client开发的Android版应用,来源于CSDN ...

  3. 工欲善其事,必先利其器——React Native的 IDE

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/yayayaya20122012/article/details/51119801之前的文章中,我们已 ...

  4. React Native入门教程2 -- 基本组件使用及样式

    在上一篇文章中,我们学会了如何搭建React Native的环境(React Native入门教程(笔记) 1 – 开发环境搭建),不知道你们是否搭建好了呢,如果还没有,那么快动起小手,来体验RN带给 ...

  5. DECO 一个REACT NAtive 开发IDE工具

    DECO 一个REACT NAtive 开发IDE工具. 目前只支持 OS,NO WINDOWS https://www.decosoftware.com/ 一个方便的快速 ERXPRESS 教程:h ...

  6. React Native入门教程 3 -- Flex布局

    上一篇文章中介绍了基本组件的使用 React Native入门教程(笔记) 2 – 基本组件使用及样式 本节内容将继续沿用facebook官方例子介绍如何使用Flexbox布局把界面设计的多样化. 转 ...

  7. React Native入门教程 1 -- 开发环境搭建

    有人问我为啥很久不更新博客..我只能说在学校宿舍真的没有学习的环境..基本上在宿舍里面很颓废..不过要毕业找工作了,我要渐渐把这个心态调整过来,就从react-native第一篇博客开始.话说RN也出 ...

  8. React Native入门-刘望舒

    React Native入门(一)环境搭建与Hello World React Native入门(二)Atom+Nuclide安装.配置与调试 React Native入门(三)组件的Props(属性 ...

  9. React Native入门指南

    转载自:http://www.jianshu.com/p/b88944250b25 前言 React Native 诞生于 2015 年,名副其实的富二代,主要使命是为父出征,与 Apple 和 Go ...

随机推荐

  1. 第十六周项目3:max带来的冲突

    问题及代码: /* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名:project.cpp *作 者:陈文青 *完毕日期:20 ...

  2. 使用caffemodel模型(由mnist训练)测试单张手写数字样本

    caffe中训练和测试mnist数据集都是批处理,可以反馈识别率,但是看不到单张样本的识别效果,这里使用windows自带的画图工具手写制作0~9的测试数字,然后使用caffemodel模型识别. 1 ...

  3. HDU4825:Xor Sum 解题报告(0/1 Trie树)

    Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数. 随后 Prometheus 将向 Ze ...

  4. BZOJ 2115 DFS+高斯消元

    思路: 先搞出来所有的环的抑或值 随便求一条1~n的路径异或和 gauss消元找异或和最大 贪心取max即可 //By SiriusRen #include <cstdio> #inclu ...

  5. webi和universe

    Universe是一个包含以下内容的文件: 1 一个或多个数据库中间件的连接参数. 2 称为对象的SQL结构,映射到数据库中的实际SQL结构,如列,表和数据库函数.其中对象是按类分组的.用户既可以看到 ...

  6. 51Nod 1010 只包含因子2 3 5的数(打表+二分)

    K的因子中只包含2 3 5.满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15. 所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数. 例如:n = ...

  7. 什么是Monad?

    为了理解什么是Monad,最好需要了解什么是Monoid.这两篇互为姐妹篇,因为Monad的定义是:A monad is just a monoid in the category of endofu ...

  8. 洛谷——P3374 【模板】树状数组 1

    https://www.luogu.org/problem/show?pid=3374 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 输入输 ...

  9. 读 Paxos 到 ZooKeeper ¥ 50大洋

    一  初识 ZooKeeper              高效且可靠的分布式协调服务.解决分布式一致性问题             统一命名服务.配置管理服务.分布式锁服务.      使用: 比如配 ...

  10. svn 的使用(二)

    这篇主要介绍下 svn 钩子的使用,svn 的安装以及配置等能够查看svn 的使用(一) 我们能够在svn创建的仓库目录下看到 hooks 目录. 这里面就存放这个各种svn操作同一时候会运行的脚本文 ...