Shopify 从 React Native 转回原生开发

Shopify 从 React Native 转回原生开发

Hacker News 摘要

原标题:Shopify moves back to Native from React Native

Shopify 宣布将其移动端应用的技术栈从 React Native 全面转回原生开发(iOS 使用 Swift,Android 使用 Kotlin)。

转向原生开发的原因

Shopify 在 2020 年曾全面转向 React Native,核心目的是避免同一功能写两次代码、让跨栈开发者更容易参与,并减少双端功能对齐的成本。

随着 AI 编程代理(Coding Agents)和大语言模型能力的飞跃,Shopify 重新评估了技术栈。他们发现,AI 极大地降低了分别在 Swift 和 Kotlin 中开发同一功能的成本:

• AI 能够以 iOS 版本为参考实现 Android 版本,反之亦然。

• AI 帮助开发者快速熟悉并参与非主力技术栈的开发。

• 通过共享规范、测试和评审检查点,AI 大幅降低了双端保持功能一致的维护成本。

尽管原生开发仍需维护两个平台的代码,但 AI 已经承担了大量的实现、翻译、测试和评审工作。这削弱了跨平台代码共享带来的优势,而原生开发贴近平台原生能力、第一方工具链以及更少依赖层级的优势得以凸显。

开源项目的后续安排

Shopify 对其维护的 React Native 开源库制定了过渡计划:

React Native Skia:Shopify 将资助维护至 2026 年底。原作者将在后续几个月内创建分支并以新名称发布,原仓库在过渡完成后归档。

FlashList:作为每周下载量约 200 万次的高性能列表库,Shopify 会继续修复破坏兼容性的关键问题,目前正在与其他公司接洽长期维护托管事宜。

Restyle:由于用户基数较小,仓库将保持维护至 2026 年底后归档,欢迎社区接手或分支。

迁移策略与全新工具链

Shopify 放弃了渐进式混合迁移(Brownfield),选择了基于 AI 的推倒重写方案(Greenfield)。其旗下重点应用 Shop App 在 AI 辅助下,仅耗时 12 周便完成了从概念验证到全原生应用的重写并上线。包含 300 多个页面及小组件等复杂功能的 Shopify 主应用也在迁移中。

为了保证重写质量和开发效率,Shopify 引入了两项关键技术方案:

Helix 渐进式构建系统:为了避免 AI 一次性生成不可维护的劣质代码(Slop),Helix 会分析原有的 React Native 代码并生成有序的检查点。每个检查点都必须通过测试验证、视觉比对评审、两轮对抗式代码评审以及人工确认,形成严格的反馈闭环。

面向 Agent 优化的解耦架构与 CLI:传统的模拟器测试非常缓慢。Shopify 将业务逻辑与 UI 完全解耦,使其能直接在桌面端以无界面模式运行,并通过专用 CLI 暴露给 AI。AI 无需操作模拟器或解析无障碍树,就能在毫秒级别内检查应用状态、导航并执行操作,大幅加快了调试与端到端测试效率。


原文:https://shopify.engineering/back-to-native

评论:https://news.ycombinator.com/item?id=49643982

Report Page