关于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. oracle 11g RAC手动卸载grid,no deinstall

    1.通过root用户进入到grid的ORACLE_HOME [root@db01]# source /home/grid/.bash_profile [root@db01]# cd $ORACLE_H ...

  2. angularjs $location 服务

    <!DOCTYPE HTML> <html ng-app="myApp"> <head> <meta http-equiv="C ...

  3. bzoj1003: [ZJOI2006]物流运输(DP+spfa)

    1003: [ZJOI2006]物流运输 题目:传送门 题解: 可以用spfa处理出第i天到第j都走这条路的花费,记录为cost f[i]表示前i天的最小花费:f[i]=min(f[i],f[j-1] ...

  4. Xshell高级后门完整分析报告

    Xshell高级后门完整分析报告 from:https://security.tencent.com/index.php/blog/msg/120 1. 前言 近日,Xshell官方发布公告称其软件中 ...

  5. 2.安装 CLI和CLI的工作原理

    转自:https://www.gruntjs.net/getting-started 还在使用 Grunt 0.3 版本吗?请查看 Grunt 0.3 注意事项 在继续学习前,你需要先将Grunt命令 ...

  6. Keyboard input

    Keyboard input Python provides a build-in function called raw_input (in version 2.x) that gets input ...

  7. 机器学习(七) PCA与梯度上升法 (下)

    五.高维数据映射为低维数据 换一个坐标轴.在新的坐标轴里面表示原来高维的数据. 低维 反向 映射为高维数据 PCA.py import numpy as np class PCA: def __ini ...

  8. js中字符串转驼峰转为下划线

    function dasherize(str) { return str.replace(/::/g, '/') .replace(/([A-Z]+)([A-Z][a-z])/g, '$1_$2') ...

  9. Kubernetes1.5 集成dashboard

    Kubernetes1.5 集成dashboard 配置kubernetes的dashboard相对简单.同样的,只需要从源码中获取到dashboard-controller.yaml及dashboa ...

  10. [POI2015]WIL-Wilcze doły(单调队列)

    题意 给定一个长度为n的序列,你有一次机会选中一段连续的长度不超过d的区间,将里面所有数字全部修改为0.请找到最长的一段连续区间,使得该区间内所有数字之和不超过p. (1<=d<=n< ...