写点什么

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

  • 2015-02-02
  • 本文字数:1162 字

    阅读完需:约 4 分钟

近日,在 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 元素来渲染,比如使用取代
    ,使用替代等。在后台,React Native 运行在主线程之外,而在另一个专门的后台线程里运行 JavaScript 引擎,两个线程之间通过异步消息协议来通信(有个专门的插件)。
  3. 在 UI 方面,React Native 提供了一个跨平台、类似 Flexbox 的布局系统,并且还支持 CSS 子集。
  4. 可以用 JSX 、JavaScript、 CoffeeScript TypeScript 来开发。

React/React Native 团队成员 Jordan Hack 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 )关注我们,并与我们的编辑和其他读者朋友交流。

2015-02-02 07:3019739
用户头像

发布了 46 篇内容, 共 55.5 次阅读, 收获喜欢 15 次。

关注

评论

发布
暂无评论
发现更多内容

【安全漏洞】Struts2漏洞集合总结

H

网络安全 安全漏洞

SAP ABAP 业务开关和 SAP 电商云的 Feature Level

汪子熙

angular abap 1月月更 增强包 增强技术

腾“云”架“雾”,3DCAT带你进入元宇宙

3DCAT实时渲染

云渲染 元宇宙

数智融合加速驱动企业商业创新

用友BIP

大数据 数据中台

SparkSQL高并发:读取存储数据库

华为云开发者联盟

数据库 高并发 Sparksql 存储 读取

【监控体系】全面系统的Zabbix讲解 | 含源码&监控类型整理

云智慧AIOps社区

运维 监控 zabbix 智能运维 监控工具

恒源云(GPUSHARE)_Teacher Forcing训练小技巧来啦~

恒源云

深度学习 语音识别

☕【Java深层系列】「并发编程系列」让我们一起探索一下CyclicBarrier的技术原理和源码分析

码界西柚

并发编程 AQS CyclicBarrier Java 线程 1月日更

8节深度学习干货课程,帮你轻松点亮AI项目开发技能

OpenI启智社区

人工智能 深度学习

起个变量名,好的代码应该是这样的

蜜糖的代码注释

Java 互联网 开发 后端技术

无服务器计算Serverless能否引领云计算下一个十年?

用友BIP

云计算 容器 无服务器计算

科技,让春节团圆再无距离

Anthony

教程直播第7期|如何对 OceanBase 进行 SQL 诊断和调优

OceanBase 数据库

数据库 直播 课程 OceanBase 开源 OceanBase 社区版

Hoo虎符研究院2022年0124期区块简报

区块链前沿News

Hoo虎符 Hoo 虎符交易所 区块链资讯

Python监督学习之分类算法的概述

王小王-123

Python 人工智能 机器学习 分类算法

面试官:知道 Flutter 生命周期?下周来入职!

百瓶技术

前端 生命周期 客户端 Flutter 小菜

2022年Flutter真的会一统大前端吗?

坚果

Flutter 小菜 1月月更

M1 用不了 Vagrant 只能用这个代替了“ Multipass” 一个 如Docker般的虚拟机

edd

迭代发布后,为什么还需要开迭代回顾会议?

LigaAI

团队管理 敏捷开发

服务网格的落地探索和实践

ZEGO即构

微服务 istio 服务网格 音视频开发

【重构前端知识体系之HTML】HTML5给网页音频带来的变化

归子莫

html 前端 1月月更 audio

markdown-it 插件如何写(三)

冴羽

JavaScript 前端 vuepress markdown-it markdown-it插件

首批+唯一!阿里云实时计算 Flink 版通过信通院大数据产品稳定性测试

Apache Flink

大数据 flink 阿里云 实时计算

Netty核心概念之ChannelHandler&Pipeline&ChannelHandlerContext

CRMEB

从重大漏洞应急看云原生架构下的安全建设与安全运营(上)

腾讯安全云鼎实验室

云原生 安全漏洞 安全服务

Python 判断图片和文件真实类型(qbit)

qbit

后缀

企业可以定级吗?可以自己确定等保等级吗?

行云管家

网络安全 等保 等级保护 等保2.0

深入浅出Apache Pulsar(4)Pulsar Functions

云智慧AIOps社区

Apache kafka 云原生 pulsar 消息中间件

字节跳动数据湖技术选型的思考与落地实践

字节跳动数据平台

数据湖 数据流 Apache Hudi

《火绒安全2021终端安全情报年鉴》发布 拦截弹窗广告45亿次

火绒安全

网络安全 终端工具 终端安全 勒索攻击 弹窗

国内公有云首个支持保留消息功能!百度智能云天工物联网核心套件技术再升级

百度大脑

人工智能

React Native:Facebook出品,可用JavaScript开发移动原生应用_JavaScript_李小兵_InfoQ精选文章