001@React Native 学习之了解RN技术
简介:
作者 :一枚iOS开发的程序猿
开发平台: Mac
开发IDE: Atom+Nuclide
技术背景
Native开发
开发成本高,现阶段Native仍然是必须的。因为Native体验最好:
- Native的原生控件有更好的体验;
- Native有更好的手势识别;
- Native有更合适的线程模型,尽管Web Worker可以解决一部分问题,但如图像解码、文本渲染仍无法多线程渲染,这影响了Web的流畅性。
Hybrid开发
Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。
曾经用HBuilder开发过一款笔记简单的APP,感觉就是:开发速度快,上手比较简单,但是体验不是太好,对一些简单的APP可以使用HyBrid开发。
React Native
React Native的设计理念:既拥有Native的用户体验、又保留React的开发效率
从个人角度来看
从个人角度来看的话,学习React Native也是有必要的。因为这个比Hybrid个人觉得更有市场。而且,RN技术也是全栈工程师的一个捷径。
RN不仅可以使用前端开发的模型来开发应用,还能够调用原生的UI组件和API。
不过最近阿里除了个Weex也很火,个人觉得这个技术也可以了解。RN和Weex都是同一套东西,可能侧重领域不一样。可以先学RN,毕竟强大的用户基数在那里,资源也相对会更多一些;有一定基础后,两者完全可以结合起来用,优势互补。
学习方法
学习RN的基本知识后,看gitHub上的一些优秀开源代码。
推荐的一些博客或者网址:
React Native中文网(在这里查看基础))
江清清的技术专栏(这个是我重点推荐的)
东方耀的学习视频《0基础手把手教React Native实战开发视频》0-70.学习完之后可以交钱进学习群获取更多的资源。也可以直接看gitHub的开源项目 。也可以点击这里这是我关注东方耀后获取到的视频资源。
React Native开发注意事项
目前react native在iOS上仅支持ios7以上,Android仅支持.
由于React Native的版本更新速度很快,如果没有深厚的JavaScript基础,建议选择:
a、功能适中,交互一般,不需要特别多的系统原生支持;
b、对于部分复杂的应用,可以考虑原生+React Native混合开发