初识React Native
2015年3月26日,FaceBook公司正式对外发布了React Native
更详细的介绍请移步 ReactNative中文网
React Native是什么
使用React Native开发者可以更高效的开发移动应用,ReactNative的诞生就是为了能在保持原生良好的交互体验的同时又极大的提高开发效率
在使用React Native之前需要先了解一下React、React.js、React Native三者之间的关系:
- React是一套基础框架,是一套基础设计实现理念
- React.js是基于React开发出来的一套网页开发框架
- React Native基于React开发的跨平台移动应用开发框架,要想使用React Native需要用到JavaScrip
ReactNative的优点
ReactNative(以下简称RN)支持目前最主流的android平台和ios平台,使用RN开发的代码可以只经过微量的改动就能运行于两大平台,极大的提高了开发效率和开发速度,React框架并不追求一次编写,处处运行,React认为不同的平台应该有不同的平台特色,交互,体验,而React把不同平台的能力分为跨平台能力与平台特色能力,它提倡的是一次学习,处处编写。
RN支持混合开发、即RN代码与原生代码混合使用在保证用户体验的同时大大提高开发效率,比如RN的强项是Ui 界面,而且RN拥有优秀的Ui开发框架,就可以使用RN开发UI界面使用原生开发界面逻辑。
RN强大的ui开发能力,开发的同学应该都知道在开发中大概有百分之七十的时间是在写ui,而使用RN开发至少能为你节省一半的时间,而且相信移动前端开发的同学都清楚,ui开发中有一个头疼的问题就是对于不同机型的适配,关于适配的操作应该也是操蛋无比,但是RN在ui适配上的处理让开发者几乎不用考虑适配问题
RN的热修补技术
因为RN使用JavaScrip语言编写,而JS属于脚本语言,何为脚本语言,能够随时部署,而不需要耗时的编译/打包过程。相信移动端开发的开发者都清楚多么迫切的需要热修补
React Native的缺点
- 比纯原生应用内存消耗略大
-不过也没有大多少,几乎是可以忽略不计的,再加上现在千元机手机内存3G+了所以我认为这个不足之处不足为虑 - 安装包比原生安装包略大
-这个就不用说了,现在随便一个千元机就16g的存储表示无所谓
使用React Native
如果你是一名android或iOS原生开发者,在学习RN之前建议你先把javascript基础知识语法了解一下,对于有开发经验的同学来说大概半天就能看完基础,看完之后再进行RN开发会顺畅很多。
如果你是一个网页前端开发者有JS开发基础,那你需要了解一下objectC和android的大概实现机制
关于于RN的介绍就到这里了,下一章会具体讲在Windows和MAC上安装RN的开发环境。
关于ReactNative基础系列的文章我会持续更新,每周至少一篇,希望和大家共同学习,共同进步!
ps:关注ReactNative开发经验集,那里有更多的小伙伴和更丰富的RN学习资源!