Flutter vs React Native
Cross-platform mobile titans compared: Flutter's Skia rendering vs React Native's native bridges, performance benchmarks, ecosystem, and 2026 enterprise adoption.
Share business logic, native UI per platform
Shared UI + runtime, single codebase cross-platform
Cross-platform mobile geliştirmenin 2026'daki iki rakip yaklaşımı: JetBrains Kotlin Multiplatform (KMP, Kasım 2023'te 1.0 stabil) ve Google Flutter (2017'de tanıtıldı). KMP 'shared logic, native UI' (iOS Swift+Android Compose, business logic Kotlin), Flutter 'shared everything' (UI dahil tek codebase, custom rendering). 2024'te KMP Compose Multiplatform iOS stable, Swift Export beta — Apple platformlarına Kotlin entegrasyonu derinleşti. Netflix, McDonald's, Forbes, Touchlab production'da KMP. Google Pay (130M+), BMW, eBay Flutter'da. Bu karşılaştırma JetBrains Kotlin Multiplatform Documentation, KotlinConf 2024, Flutter Engage 2024, JetBrains State of Developer Ecosystem 2024 ve 12+ yıllık production mobile deneyimine dayanmaktadır.
KMP'nin temel vaadi 'business logic'i paylaş, UI'ı her platformda native yaz'. iOS için SwiftUI/UIKit, Android için Jetpack Compose, paylaşılan: network layer, data models, validation, state management. KMP UI tarafında Compose Multiplatform (opsiyonel, 2024'te stable) iOS+Android+Desktop+Web tek codebase UI sunar. Apple HIG + Material 3 strict uyum gerekirse iOS'ta SwiftUI tercih edilir. Flutter ise tek codebase her şey: UI, business logic, navigation, animations — hepsi Dart'ta. Custom rendering (Impeller GPU) ile %100 platform-eşit görünüm. Trade-off: KMP daha esnek (native UI istiyorsan) ama 2 codebase (iOS Swift + KMP Kotlin); Flutter tek codebase ama platform-spesifik native widget paterni custom widget'larla taklit edilmeli. Production: Netflix Studio app KMP ile shared business logic + native UI. Google Pay 130M+ kullanıcı için Flutter — UI consistency + branding birinci.
KMP Apple platformlarda Kotlin/Native (LLVM-based) ile native binary üretir — iOS'ta gerçek native performance. Android'de Kotlin/JVM zaten native (ART runtime). Flutter Dart AOT compilation ile native binary, UI rendering Skia/Impeller GPU üzerinden (Metal/Vulkan). Cold start: KMP 1.0-1.5s iOS, Flutter 1.2-1.8s iOS. Frame rendering 60fps stable her ikisinde. Memory: KMP 60-90MB, Flutter 80-120MB. JetBrains 2024 benchmark: KMP iOS native Swift'in %95-98 hızında; Flutter %85-92 ama UI consistency'de native'i geçer. Production: pure performance KMP, UI consistency Flutter.
KMP: IntelliJ IDEA + Android Studio + Xcode 3 IDE workflow. Kotlin code IntelliJ'de yazılır, iOS view tarafı Xcode'da Swift. Hot reload kısıtlı: Android tarafında hot reload, iOS re-compile. Compose Multiplatform iOS Hot Reload (2024 Q4) preview yetersiz. Flutter VS Code + Android Studio first-class. Stateful Hot Reload 200-500ms — endüstri standardı. DevTools widget inspector güçlü. JetBrains Fleet IDE 2024 KMP-first — iOS+Android+Web tek pencere, Xcode kadar derin debugging. Pratik: Flutter solo dev için, KMP enterprise team için (iOS+Android team'leri ayrı, business logic merkezi).
Apple HIG + iOS native widget'lara strict uyum kritik (banking, finance, premium SaaS) için KMP avantajlı: iOS UI %100 SwiftUI native, KMP sadece business logic. Apple yeni framework'leri (visionOS 2, Vision Pro, Liquid Glass, Live Activities, Apple Intelligence) anında kullanılır. Flutter Cupertino Components iOS look taklit eder ama gecikmeyle: Apple yeni framework çıkardığında package maintainer'lar update etmeli (2-4 ay gecikme). visionOS / Vision Pro: KMP iOS native (Swift) anında support; Flutter visionOS desteği yok (visionOS 2 SADECE SwiftUI). Production: Netflix Studio iOS 18 Apple Intelligence integration anında, Flutter app'leri sonradan.
KMP 2024-2026 arası %180 büyüme (JetBrains 2024 anketi). Production: Netflix Studio app, McDonald's Global Mobile Platform, Forbes Mobile, Touchlab 10+ enterprise client, Philips, 9GAG. JetBrains kendi tüm cross-platform tool'larını KMP'ye taşıdı. Flutter olgun ekosistem: Google Pay, BMW, eBay, Alibaba Idle Fish, ByteDance, Toyota infotainment. App Store top 100: KMP 4 app, Flutter 12 app (Apple Q1 2026). Library: KMP 200+ multiplatform lib (kotlinx-serialization, ktor, sqldelight, koin), Flutter pub.dev 50K+ paket. KMP genç ama hızlı büyüyor; Flutter olgun ama büyüme yavaş.
LinkedIn 2026 Q1: Flutter ~22K aktif pozisyon, KMP ~8K. Maaş ortalaması (Glassdoor): Senior Flutter $115-160k, Senior KMP $125-175k (KMP'nin niche olması primium). Türkiye: Flutter 720+, KMP 180+. JetBrains 2024: %12 mobile dev primary Flutter, %4 KMP (büyüyen). Stack Overflow 2024: Flutter %66 'loved'. Touchlab gibi KMP-only consultancies hızla büyüyor. KMP avantaj: Java/Kotlin enterprise developer tabanı (15M+ dev) doğal pool. Flutter avantaj: %66 'loved' developer experience + 50K paket olgun ekosistem. Career: Flutter mobile-only + bazı web/desktop, KMP mobile + backend (Spring Boot Kotlin) + web (Wasm).
| Özellik | Kotlin Multiplatform | Flutter |
|---|---|---|
| İlk yayın yılı | 2017 (1.0 stable Kasım 2023) | 2017 (Google I/O) |
| Programlama dili | Kotlin (UI: Swift/Kotlin native) | Dart |
| UI yaklaşımı | Native UI (SwiftUI + Compose) | Custom rendering (Impeller) |
| Native compilation | Kotlin/Native (LLVM, gerçek native) | Dart AOT (native binary) |
| iOS performance vs native | %95-98 | %85-92 (Impeller GPU) |
| UI consistency cross-platform | Native (her platformda farklı) | %100 same pixel |
| Apple HIG + iOS 18 yeni feature | Anında (native Swift) | 2-4 ay gecikme |
| visionOS / Vision Pro | Native iOS Swift bridge | Desteklenmiyor |
| Hot reload speed | Kısıtlı (iOS re-compile) | Stateful 200-500ms |
| Tek IDE workflow | 3 IDE | Tek IDE |
| Library ekosistem | 200+ multiplatform lib | pub.dev 50K+ |
| Backend Kotlin code share | Spring Boot Kotlin direkt | Yok |
| Compose Multiplatform iOS | Stable 2024 Q4 | Yok |
| Production adoption (2026) | %4 mobile dev birincil | %12 mobile dev birincil |
| Job market 2026 | ~8K (büyüyen) | ~22K (olgun) |
// shared/commonMain
expect class UserRepository {
suspend fun fetchUser(id: String): User
}
// androidMain
actual class UserRepository actual constructor() {
actual suspend fun fetchUser(id: String): User {
// Native Android HTTP
}
}
// iosMain
actual class UserRepository actual constructor() {
actual suspend fun fetchUser(id: String): User {
// Native iOS URLSession
}
}import 'package:flutter/material.dart';
class UserScreen extends StatelessWidget {
final UserRepository userRepo;
@override
Widget build(BuildContext context) {
return FutureBuilder<User>(
future: userRepo.fetchUser(id: 'current'),
builder: (ctx, snapshot) {
if (snapshot.hasData) return Text(snapshot.data!.name);
return CircularProgressIndicator();
},
);
}
}Apple HIG strict + iOS premium UX (banking/finance)
iOS UI %100 SwiftUI native — Apple yeni framework'leri anında. Liquid Glass, Live Activities, Apple Intelligence integration. Business logic Kotlin shared.
UI consistency öncelik (custom design system)
Custom rendering ile %100 platform-eşit pixel. Marka kimliği her platformda aynı. Google Pay, BMW production.
Mevcut Kotlin Android team + iOS scratch
Kotlin team direkt productive. iOS team SwiftUI öğrenir + KMP shared business logic kullanır.
Mevcut React/JavaScript team → mobile geçiş
Dart 2-3 hafta öğrenirler. KMP Kotlin + Swift = dual learning curve.
Vision Pro / visionOS uygulaması
Flutter visionOS desteklemiyor. KMP iOS Swift native UI ile RealityKit + visionOS API.
Hızlı MVP, tek developer, sub-3-ay timeline
Tek IDE, tek dil, hot reload, 50K paket — hız avantajı. KMP setup overhead 2-4 hafta.
Backend + mobile aynı team (Kotlin Spring Boot)
Server-side Kotlin code mobile'da reuse. Validation, models, business logic tek codebase. Forbes, Netflix production.
KMP iOS framework size çok büyük (50-80MB ekstra)
Kotlin/Native --opt + bitcode + dead-code elimination. Multiple frameworks pattern. KMP 1.9+ size optimization improvements.
Flutter Cupertino native iOS'tan farklı (subtle pixel mismatch)
iOS 18 yeni özelliği için cupertino_icons + flutter_platform_widgets. Custom widget'lar yerine native first-party kullan.
KMP build complexity — Gradle multi-target setup
Kotlin Multiplatform Plugin 1.9+ + KMM Wizard (Android Studio plugin). JetBrains Compose Multiplatform Wizard 2024+ — 1-click setup.
Flutter widget tree rebuild performance — gereksiz setState()
const constructor + extracting widgets + Riverpod/BLoC selective subscription. Flutter DevTools Widget Inspector profile.
KMP Compose iOS SwiftUI integration
ComposeUIViewController + UIKit Representable bridge. SwiftUI'da UIViewControllerRepresentable wrapper. JetBrains 'Compose iOS' guide.
KMP'nin geleceği parlak. JetBrains 2024 roadmap: Swift Export stable (Kotlin 2.1), Compose Multiplatform iOS production-ready (2024 Q4 done), JetBrains Fleet KMP-first IDE, KMP for Web (Wasm) production. Apple Liquid Glass + Apple Intelligence native iOS Swift'te direkt kullanılır. JetBrains 2026 hedef: %20 mobile dev primary KMP. Touchlab + Google + JetBrains üçlü omurga güçleniyor.
Flutter'ın geleceği stabil. Google ekosistem (Firebase + Genkit + Imagen API) entegrasyonu derinleşiyor. Flutter 4.0 roadmap (2025): WebGL2 + Wasm default, Material 3 Expressive variant, RFW (Remote Flutter Widgets), Impeller %100 default. Flutter Forge program 2024 — partnership genişliyor (Toyota, Canonical Ubuntu). Trend: mobile + web + desktop + embed unified codebase çekirdek vaad.
Premium native UX (Apple HIG + Material strict uyum) → KMP. Fast MVP + UI consistency branding → Flutter. Existing Kotlin team → KMP direct win. Existing React team → Flutter learning kolay.
Ücretsiz Danışmanlık AlBu yazının en değerli bilgisi
Bu ipucu, yazının en önemli çıkarımını içeriyor.
Haftalık Swift tips, SwiftUI tricks ve iOS best practices. Spam yok, sadece değerli içerik.
Gizliliğinize saygı duyuyoruz. İstediğiniz zaman abonelikten çıkabilirsiniz.
KMP literal native (Swift/Kotlin compile). Flutter Skia/Impeller render fast ama 1-2% native'den geri (2026'da fark çok az).
Bu karşılaştırma 21+ resmi ve güncel kaynaktan derlenmiştir. Tüm linkler son araştırma tarihinde doğrulandı.