一、缘起
我们都知道无论Web还是App开发,UI是变化最多也最快的,
很多做开发的朋友都和我一样,经历过UI的周迭代、甚至日更新。
Web更新还方便一些,直接到更新服务器上的部署即可;
App的更新就需要经过漫长苛刻的审核(到AppStore提交过的同学,点个赞吧)。
为了更快速、高效开发应用,快速便捷更新Web与App的UI,
基于Html特别是Html5的前端界面开发,越来越普及,
但也越来越复杂。
关键和难点是:
1.来源于
服务器或用户输入的动态数据,如何高效展示到复杂的用户界面上;
2.如何让UI与系统更好地协作(调用本地API);
3.开发出的UI效果尽量符合不同平台的UI风格。
二、React简介
Facebook在2013年开源了一套解决方案,提供React框架,
现在,我们可使用JavaScript和Facebook的React库,开发原生iOS和Android应用程序。
这样,可以用开发 Web App 的方式,来开发 Native App,解决上述问题。
React Native使用Javascript,将App编译为原生的应用程序视图UI,
提供了用户熟悉外观风格和用户体验,与iOS和Android设备上应用保持一致。
注意:
2.开源的React Native库,目前已经可在github上下载,目前只有iOS版,不过Android版本很快也将开源。
三、React特点
我们熟悉面向过程编程、面向对象编程和面向组件编程。
三者是随着软件工程规模和效率的要求,逐渐发展而来的。
React就采用了组件化编程,用有组件化编程的特点。
React建议以组件的方式,思考与设计UI的构成。
将UI上每一个相对独立的功能模块,定义成组件;
将小组件,通过组合或嵌套的方式,构成大的组件,
最终完成整体UI的构建。
当然,组件化编程不是新鲜东东,
很多朋友在Java、C#、Objective-C或Swift开发时,都已经采用到了。
采用组件编程,代码简洁,功能更强、更稳定。
React 的设计思想极其独特,属于革命性创新,性能出众,代码逻辑却非常简单。
所以,得到很多人关注和使用,可能是未来 Web 开发和App开发主流工具。