BT

您是否属于早期采用者或者创新人士?InfoQ正在努力为您设计更多新功能。了解更多

React Native:Facebook出品,可用JavaScript开发移动原生应用

| 作者 李小兵 关注 0 他的粉丝 发布于 2015年2月2日. 估计阅读时间: 不到一分钟 | 硅谷人工智能、机器学习、互联网金融、未来移动技术架构 ,尽在QCon上海2017

近日,在React.js 2015大会上,Facebook公布了即将开源的React Native,它基于开源框架React.js,并可用来开发iOS和Android原生应用。目前,Facebook已经将React Native投入到了实际生产环境中,并开发出了基于iOS平台的聊天工具Groups。

从ProgVille发布的一篇题为《React Native—使用React.js开发原生应用》的文章中得知以下React Native的相关信息:

  1. React Native已实现了对iOS和Android两大平台的支持。
  2. 使用React Native开发原生应用的原理是:在JavaScript中用React.js抽象操作系统的原生UI组件,继而代替DOM元素来渲染,比如使用<View>取代<div>,使用<Image>替代<img>等。在后台,React Native运行在主线程之外,而在另一个专门的后台线程里运行JavaScript引擎,两个线程之间通过异步消息协议来通信(有个专门的插件)。
  3. 在UI方面,React Native提供了一个跨平台、类似Flexbox的布局系统,并且还支持CSS子集。
  4. 可以用JSX、JavaScript、CoffeeScriptTypeScript来开发。

React/React Native团队成员JordanHack News上分享了React Native的一些基于个人观点的信息,他说到React Native为提高开发效率提供了大量的益处,但是在性能方面,React Native还存在一些问题。同时还指出React Native同其他原生开发应用方式的不同之处,如React Native完全不用DOM、React Native既保证对应用程序性能的要求,同时兼顾Web开发优点;能够使用JavaScript来写高质量的应用等。

Reddit上也有了相关评论信息用户lunchmeat317认为学习React.js的时机到了。用户BishopAndWarlord表示对React Native很好奇并期待获得更多相关信息。

用户jrm2k6评论到:

自己已了解和喜欢他们的理念:一次学习,即可以做自己想着的任何事情。但是现在需要展示一些代码实例了,也许这是一个愚蠢的问题,但是它和Ionic有什么不同,同使用AngularJS开发iOS/Android应用有什么不同?

 

用户arx707接着回答到:

React Native使用React.js作为原生组件的抽象层,而AngularJS和Ionic使用WebViews模拟本地组件,React Native的性能应该和Appcelerator跨平台工具Titanium一样。

React Native基于React.js实现,而React.js是Facebook推出并开源的一个用来构建用户界面的JavaScript库,其已经应用于构建Instagram网站及Facebook部分网站。React.js 同AngularJS、MeteorJS和Polymer类似,它们都属于Model-Driven Views结构的框架,但是React.js又与他们有不同之处,即React.js使用JavaScript而非HTML来构建用户界面。更多关于React.js和React Native的详


感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT