
2026/09/10 23:09
Shopify、React Native からネイティブ開発に戻る
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Shopify は、クロスプラットフォームの React Native フレームワークからネイティブな Swift および Kotlin コードベースへのモバイルアプリ戦略を移行しています。この転換は、AI コーディング技術の進歩が共有コードの生産性優位性を相対的に低下させ、AI エージェントがレガシーフレームワークの維持よりも複雑なタスクを実装できる速さを実現したことに触発されました。ビジネスロジックとユーザーインターフェースを分離することで、Shopify は高速な CLI を介してテストやスクリンショットによるシミュレータの遅延を迂回し、ヘッデス(無頭)状態においてアプリロジックに対して自律的な AI エージェントによる反復開発を可能にしています。品質を確保するため、Shopify は Helix というシステムを導入し、デプロイ前にテスト、ビジュアルレビュー、敵対的コード分析、および人間の承認を含む段階的なチェックポイントループを強制しています。Shop アプリの 12 週間の成功したパイロットプログラムの後、大規模な旗艦アプリ(300 のスクリーン以上)の移行を進めつつ、Shopify は React Native Skia などの重要なライブラリを 2026 年まで引き続きサポートし、FlashList に対するバグ修正を維持する一方で、Restyle などの小規模なリポジトリはアーカイブします。このようにグリーンフィールドの再構築アプローチにより、AI がネイティブ開発を加速化させ、卓越したパフォーマンスと安定性を提供する新たな業界標準が確立されます。
本文
Shopify:React Native からネイティブ(Swift/Kotlin)への大規模移行と、AI エージェントによる再構築
結論:なぜネイティブ開発に戻ったのか
2020 年の React Native 全社導入は莫大な成功でしたが、LLM(人工知能)の技術進歩により前提条件が変化しました。コスト比較の結果、ネイティブ開発(Swift/Kotlin)への回帰が最適解であると判断されました。
2020 年:React Native を選択した理由
当時は以下の 3 つのメリットが React Native 採用を正当化していました。
- 重複構築の回避: 同じ機能を開発するコストを削減。
- エンジニアリングバリアの低下: データベース知識なしでもフルスタック開発が可能に。
- 同等化(Feature Parity)コストの削減: プラットフォーム間の差を埋めるための常時メンテナンスから解放される。
2025 年:状況の変化と決断
LLM の進化により、コーディングモデル自体が劇的に進歩し、「機能構築のコスト」が以前より格段に低下しました。
- AI エージェントの能力向上:
- iOS から Android(またはその逆)への機能移植が可能に。
- 特定の言語知識を持たない開発者も他分野での貢献を支援可能に。
- テストやレビューチェックポイントの共通化により、同等化維持コストが劇的に削減される。
- 決断のポイント:
- React Native は依然として高速なアプリ構築が可能ですが、AI による実装代行分を差し引くと、ネイティブ開発特有の「プラットフォーム直結性」や「公式ツール親和性」の方がメリットが高い状態になりました。
- フレームワーク層や依存ライブラリなしに、OS 機能を直接扱えるネイティブ開発への移行が選定されました。
React Native オープンソースライブラリの今後
円滑な移行のため、既存のオープンソース資産には以下の対応を行います。
React Native Skia
- Shopify の姿勢: 2026 年までスポンサーシップを継続し、開発者(William Candillon)への支援を続けます。
- 今後の展開:
- 今後数ヶ月以内にリポジトリがフォークされ、新しい名前での公開を開始。
- 移行完了後は元リポジトリをアーカイブ。
- 要望: このライブラリを利用されているアプリ開発者は、スポンサーシップのご検討をお願いしています。
FlashList
- 現状: 週に約 200 万件のダウンロードがあり、高性能リスト描画のデファクトスタンダード。
- Shopify の方針: 互換性を損なう重大な不具合修正は継続し、エコシステムの重要性を認識。
- 今後の展開: 長期的な管理を引き継ぐ企業を探しており、関心のある企業へのご連絡をお待ちしています。
Restyle
- 現状: ユーザー数が比較的小さいため、アーカイブが決定。
- 保証期間: 2026 年末まで動作を保証しますが、その後はメンテナンスを停止。
- 要望: フォークして継承を進めたい方大歓迎です。チームへの移管協力も可能です。
移行アプローチ:Brownfield から Greenfieldへ
Shopify は数百万人のユーザーに依存する大規模アプリ(Shop, Point of Sale など)を持ちます。以前は既存コードを漸進的に移行する「Brownfield」方式を採用しましたが、今回は**「Greenfield(ゼロから再構築)」**が明確な勝利となりました。
Greenfield が選定された理由
- AI の優位性: LLM は React Native コードを参照しつつ、Swift/Kotlin で機能構築に極めて優れている。
- クリーンな画板: 過去の技術的負債や制約から解放され、再構築できる。
- プロトタイプの結果: コーディングエージェントを活用する以前の不可能だったスピードで、アプリを実質的に高速に再構築可能。
移行の進捗スケジュール
- Shop アプリ(常時トップランク): AI 支援によりコンセプト検証からストア公開まで12 週間で完了。完全にネイティブ化済み。
- 詳しくは 関連記事 を参照してください。
- Shopify アプリ(最大規模:画面数 300+、ロック画面ウィジェット、Apple Watch 対応など): 移行進行中。今年後半のリリース予定。
- 残りのアプリ: 次々と移行予定です。
「スラップ(粗悪コード)」の防止と Helix システム
AI に指示を出すだけで即座にネイティブ実装を完成させることは不可能です。初期試行ではメンテナンス不能な膨大な粗悪コード(slop)が発生する恐れがあります。これを防ぐために、より漸進的なアプローチを採用した**「Helix」**システムを開発しました。
Helix の仕組み
AI には最初の出力が正解であるとは期待せず、「不完全な試みが良好な結果に至るまで前に進めない」というループ構造を持たせました。
- 入力: 開発者が対象画面を指定。
- 提案: Helix が React Native コードを読み込み、数分以内にレビュー可能なチェックポイント(作業のスライス)の列挙を提出。
- 検証・実装サイクル(各チェックポイントごと):
- テストによる動作検証。
- 実行中のアプリとの視覚的比較レビュー。
- 2 名の対立的なコードレビュアーを通す。
- 人間の承認(ナット)を得てのみコミットし、次のステップへ進む。
すべてのフィードバックは記憶され、移行が進むにつれてこのプロセスがより自律的になります。Shop アプリの完全再構築でもこのアプローチで成功しています。
高速なフィードバックループの実現
シミュレータを用いたエージェント制御には遅延があり、反復速度のボトルネックとなっていました。これを解決するため、以下のアーキテクチャ変更を行いました。
アーキテクチャの再設計
- 人間とエージェントへの適合: ビジネスロジックを UI から完全に解離させ、デスクトップ上で**ヘッドレス(無 GUI)**で動作可能にしました。
- CLI の活用:
- エージェントに CLI を提供し、シミュレータを介さない状態でミリ秒単位の反復を可能化。
- アプリのナビゲーション、アクション実行、状態検査、セクション移動などを UI 触れなしで自動化。
成果
- 超高速フィードバックループ: エージェントが数時間単位で自律的に作業を実行できるようになりました。
- リモートモード: シミュレータ制御が必要な場合でも、CLI を経由してコマンド駆動し、レイアウトやアクセシビリティツリーの検査を省略することで、E2E テストの超高速化を実現しました。
今後の展望と基準
これはリアルタイム(早送りなし)の進行です。すべてのモバイルアプリを Swift と Kotlin に移行するプロセスは継続中です。
品質基準
- シンプルな言語書き換えではありません。現代の利用者が期待するパフォーマンス、安定性、アクセシビリティ、製品品質を達成・超える再構築が行われます。
- 成功の定義: チームがユーザーに対して、以前よりも優れた体験をより迅速に提供できること。
- 測定指標: プロダクトスピード、アプリ品質、エージェントによる自律完了可能な作業量。
公開と招集
- このプロセスで得られた知見(Helix システムの詳細、エージェント対応アーキテクチャなど)は随時共有予定。
- React Native の歴史と同様に、今回の移行についても開明的に情報を発信していく方針です。
- 次世代モバイルアプリの構築を支援する開発者募集中です(モバイルエンジニア、インフラエンジニア、AI とソフトウェア工学の交差点)。
謝辞
2020 年時点で React Native が正解だったように、現在はネイティブ開発が Shopify に正解です。その変遷は、数多くの人々の貢献なくしてあり得ません。
- Meta: React Native フレームワークの優れた管理者として、長年のフィードバックへの対応と投資に感謝。
- William Candillon: React Native Skia の作成と可能性の再定義に対し、期待を込めて。
- Software Mansion: Reanimated の開発、困難なアニメーション・パフォーマンス問題への解決協力へ感謝。
- Shopify エンジニア: 数百名のエンジニアが貢献し、仮定に挑戦し、サービス継続を実現してくれたことへ心からの敬意。
- React Native コミュニティ: ライブラリ利用、コードコントリビューション、バグ報告、意思決定への挑戦など、すべてのオープンソースの精神へ感謝。
過去 6 年間に築いたツール、教訓、関係性は、今後もモバイルアプリ開発のあり方を形作ります。