React Native дає змогу будувати iOS- та Android-застосунки з React і спільною JavaScript/TypeScript-кодовою базою. Це не означає «один код без винятків»: частина поведінки, інтеграцій і UI все одно може бути платформоспецифічною.
Як починати новий проєкт
Актуальна документація React Native рекомендує для нових застосунків використовувати framework, зокрема Expo. Такий підхід одразу дає маршрутизацію, доступ до поширених native API та інструменти для збірки й оновлення.
Коли потрібне нативне середовище
Якщо проєкт має специфічні обмеження або потребує прямої роботи з native-кодом, React Native можна використовувати без framework. Тоді для Android знадобляться Android Studio та відповідний SDK, а для локальної збірки iOS — macOS і Xcode.
Що реально можна перевикористати
Бізнес-логіка, робота з API, типи, частина state management і значна частина компонентів можуть бути спільними. Водночас permissions, push notifications, deep links, background tasks, платежі та специфічні UI-патерни потрібно тестувати окремо на кожній платформі.
Коли React Native доречний
- команда вже має сильну React/TypeScript експертизу;
- потрібно швидко підтримувати дві мобільні платформи;
- продукт не залежить від великої кількості нестандартного native-коду;
- важлива спільна продуктова логіка між платформами.
Коли варто оцінити альтернативи
Якщо застосунок глибоко інтегрується з платформеними API, має жорсткі вимоги до специфічної графіки чи вже існують великі нативні команди, окремі native-застосунки можуть бути простішими в довгостроковій підтримці.
Джерело: React Native — Get Started.