Урок 12

Сравнение с Kotlin, Swift, Flutter, KMP

React Native — не единственный путь в мобильной разработке. Разберём альтернативы.

Kotlin (Android)

Плюсы:

  • Полный доступ к Android SDK
  • Лучшая производительность
  • Jetpack Compose для UI
  • Официальная поддержка Google

Минусы:

  • Только Android
  • Отдельная команда для iOS
  • Дороже в разработке

Когда выбирать: Android-first продукт, сложная нативная логика, интеграция с системой.

Swift (iOS)

Плюсы:

  • Полный доступ к iOS SDK
  • SwiftUI для UI
  • Лучшая производительность на iOS

Минусы:

  • Только iOS
  • Нужен Mac
  • Отдельная команда

Когда выбирать: iOS-first, премиум-приложения, сложная графика.

Flutter

Плюсы:

  • Один код для iOS, Android, web, desktop
  • Высокая производительность (рисует всё сам)
  • Богатая библиотека виджетов
  • Hot reload

Минусы:

  • Dart — отдельный язык
  • Больший размер приложения
  • Не нативные компоненты
  • Меньше готовых библиотек, чем в JS

Когда выбирать: визуально насыщенные приложения, единый UI на всех платформах, игры.

Kotlin Multiplatform (KMP)

Плюсы:

  • Общая бизнес-логика
  • Нативный UI на каждой платформе
  • Официальная поддержка JetBrains
  • Растёт популярность

Минусы:

  • UI всё равно пишется отдельно
  • Кривая обучения Kotlin
  • Меньше готовых решений, чем в RN

Когда выбирать: команда с Kotlin-опытом, нужен нативный UX, но готова делиться логикой.

React Native

Плюсы:

  • JS/TS — знакомый язык
  • Один код для iOS и Android
  • Огромная экосистема npm
  • Горячая перезагрузка
  • OTA-обновления
  • Веб-разработчики быстро осваивают

Минусы:

  • Производительность ниже нативной в сложных случаях
  • Зависимость от нативных модулей
  • Иногда нужно писать нативный код
  • Размер приложения

Когда выбирать: стартап, MVP, продукты с обычной нагрузкой, команда на JS/TS.

Сравнительная таблица

RNFlutterKMPKotlinSwift
ЯзыкJS/TSDartKotlinKotlinSwift
ПлатформыiOS, AndroidВсеiOS, AndroidAndroidiOS
UIНативныйСвойНативныйComposeSwiftUI
СкоростьСредняяВысокаяВысокаяВысокаяВысокая
OTAДаНетНетНетНет
ЭкосистемаОгромнаяБольшаяРастущаяОгромнаяОгромная

Реальность 2026 года

  • React Native — стандарт для JS-команд, стартапов, MVP
  • Flutter — визуально сложные приложения, единый UI
  • KMP — энтерпрайз, банки, интеграция с существующими Kotlin-командами
  • Kotlin/Swift — крупные продукты, где важна производительность и нативность

Банки в России

Основные банковские приложения (Сбер, Т-Банк, Альфа, ВТБ) — нативные: Kotlin для Android, Swift для iOS. Кроссплатформенные решения не используются для критичных приложений.

Что выбрать тебе

  • Ты JS/TS-разработчик → React Native
  • Ты хочешь кроссплатформу с максимальной производительностью → Flutter
  • У тебя Kotlin-команда → KMP
  • Ты работаешь в крупном банке → Kotlin + Swift нативно

Мобильная разработка — это не только код

  • Разрешения и приватность
  • Публикация в сторах
  • Ревью от Apple и Google
  • Обновления и версии
  • Аналитика и краши
  • ASO

Итоги

  • RN — для JS-команд
  • Flutter — для визуальных приложений
  • KMP — для энтерпрайза
  • Kotlin/Swift — для крупных продуктов
  • Банки используют нативные стеки
  • Выбор зависит от команды, задачи и сроков