写点什么

Shopify 将移动开发转向 React Native,性能提升翻倍、超 95% 跨平台代码共享

  • 2020-02-24
  • 本文字数:1064 字

    阅读完需:约 3 分钟

Shopify将移动开发转向React Native,性能提升翻倍、超95%跨平台代码共享

对React Native进行了一年的实验后,Shopify 表示将会使用它来进行未来移动应用的开发。根据报道,React Native 所带来的收益是成倍的性能提升和超过 95%的跨平台代码共享。


Shopify 是在收购Tictail之后开始其 React Native 之旅的,Tictail 是一家专注 React Native 的公司。Shopify 背后的另外一个驱动因素是他们已经在其 Web 产品中广泛使用 React 了。因此,探索将 React 模型进一步扩展至移动应用的可能性也就是很自然的事情了。在 2019 年,有三个团队分别开发了三个不同的应用程序,即ArrivePoint of SaleCompass。Arrive 是一个针对消费者的订单跟踪工具,有数百万的下载,而 Point of Sale 和 Compass 的目标则是卖家。


Arrive 之前只能用于 iOS,在使用 React Native 重写之后,就使提供 Android 版本也成为可能,而且这个过程几乎不消耗任何成本。据 Shopify 所述,这两个 Arrive 版本共享了 95%的代码库。更让人惊讶的是,Shopify 声称与原生的、只支持 iOS 的版本相比,使用 React Native 之后降低了应用崩溃的频率。为了阐述基于 JavaScript 的应用的灵活性,Arrive 包含一种特殊的机制,我们可以扫描与 GitHub pullrequest 相关联的一个二维码,这样的话应用的bundle会自动更新至该PR相关的代码


在 Point of Sale 中,Shopify 只使用 React Native 来创建应用的 Android 版本,而将 iOS 版本的应用继续留给了原来的团队。通过让这两个版本相互独立,Shopify 希望能够对比原生 iOS 技术与 Android 上 React Native 之间的开发速度,同时还能比较 React Native 版本与原生 iOS 应用之间的性能。Point of Sale 的开发依然还在进行之中,因此目前还没有详尽的对比结果。但是,即使在 CPU 频率为 1.5GHz 的设备上,Android 版本也表现出了良好的性能。


最后,就是关于 Compass,Shopify 对比了三个可选方案,分别是原生、Flutter 和 React Native。他们最终决定使用 React Native,在三个月的时间内,他们就发布了该应用的 iOS 和 Android 版本,并实现了大约 99%的跨平台代码共享。


Shopify 表示,他们会继续投资 React Native,当然这并不意味着他们会用这项新技术重写所有的应用。还应注意的是,Shopify 将继续使用低层级的原生库和框架来开发他们的应用程序。当性能需要的时候,他们会考虑使用原生技术编写低层级组件的可能性。尤其是,必须要在较旧的硬件上运行的组件(CPU 频率低于 1.5GHz),或者执行 CPU 密集型处理的组件,它们需要最高的性能,或者会使用大量的后台线程。


原文链接:


React Native is the Way To Go for Mobile App Development at Shopify


2020-02-24 11:311713

评论

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

研发效能|DevOps 已死平台工程永存带来的焦虑

laofo

DevOps 研发效能 持续交付 工程效率 平台工程

FFmpeg-ffplay播放器分析(1).md

Changing Lin

音视频 ffmpeg 安卓

软件测试面试真题 | 讲讲 OSI 七层模型,每层模型具体干嘛的?

测试人

SAP UI5 BarcodeScannerButton 的初始化逻辑 - feature 检测,Cordova API 检测等逻辑

汪子熙

前端开发 Fiori SAP UI5 ui5 11月月更

官宣 | 袋鼠云获过亿元 C + 轮融资,深耕国产自研数字化技术与服务

袋鼠云数栈

TOGAF企业架构框架4-内容框架

马说IT

架构 TOGAF 企业架构框架 内容框架

SAP UI5 和 Angular 的函数防抖(Debounce)和函数节流(Throttle)实现原理介绍

汪子熙

前端开发 angular Fiori ui5 11月月更

鱼骨图还能做需求优先级分析?

产品海豚湾

产品经理 产品设计 产品开发 需求分析 11月月更

前端工程师leetcode算法面试必备-二分搜索算法(下)

js2030code

JavaScript LeetCode

Nginx配置中root和alias分不清?本文3分钟帮你解惑!

wljslmz

nginx 服务器 root 11月月更 alias

以开发之名|线上家装新美学——梦想之家,由你来定

HarmonyOS SDK

AR HMS Core

TOGAF企业架构框架5-企业连续统一体

马说IT

TOGAF 企业架构框架 架构分区 企业连续统一体 架构存储库

安全左中右·2022 XDR 网络安全运营新理念峰会圆满落幕

未来智安XDR SEC

网络安全 XDR扩展威胁检测响应

数据的分组与计算

芯动大师

Python pandas 11月月更

如何写成高性能的代码(三):巧用稀疏矩阵节省内存占用

葡萄城技术团队

前端 稀疏矩阵

Baklib知识分享|企业知识管理难,该如何解决?

Baklib

基于 Grafana LGTM 可观测性平台的快速构建

Grafana 爱好者

可观测性 Observability

真正的高效能RPC框架Focus

dinstone

json RPC 高性能 protobuf 跨语言

MongoDB源码学习:mongod如何处理请求

云里有只猫

mongodb 源码学习

EDAS 流量入口网关最佳实践

阿里巴巴云原生

阿里云 分布式 云原生 网关

Spring Boot「21」JPA 中的 Entity

Samson

Java hibernate Spring Boot 学习笔记 11月月更

云原生生态 我们选择了哪些

Rayzh

Docker Kubernetes, 云原生, eBPF

Baklib经验分享 | 一些搭建帮助中心的攻略

Baklib

帮助中心

Java | IO流介绍

陌上

Java 编程 11月月更

物联网数据分析(上篇)——业务系统架构类

阿里云AIoT

阿里云 数据分析 物联网 业务架构 数据存储

python小知识-set妙用

AIWeker

Python 人工智能 python小知识 11月月更

2022-11-01:给定一个只由小写字母和数字字符组成的字符串str。 要求子串必须只含有一个小写字母,数字字符数量随意。 求这样的子串最大长度是多少?

福大大架构师每日一题

算法 rust 福大大

云渲染是CG的最后一道工序,四个特性让你的渲染更高效

Finovy Cloud

云渲染 云渲染农场

透过关键基础设施安全事件谈SBOM

安势信息

Gartner SCA 软件物料清单 SBOM 清源CleanSource SCA

融云钜惠来袭,新客尝鲜首月 2.7 折起,超值套餐 6 折起

融云 RongCloud

产品

盘点具备盈利潜力的几大加密板块,以及潜在的投资机会

BlockChain先知

Shopify将移动开发转向React Native,性能提升翻倍、超95%跨平台代码共享_移动_Sergio De Simone_InfoQ精选文章