Stack Overflow 2025 Developer Survey verilerine göre cross-platform mobil geliştirmede React Native %38, Flutter %46 kullanım oranına ulaştı; bu iki framework birlikte kurumsal mobil projelerin %84’ünü kapsıyor. Native iOS ve Android için ayrı ekip kurmanın 2-3 katı maliyet getirdiği 2026 ortamında, doğru cross-platform seçimi 18 aylık bir ürün yol haritasında milyonlarca lira fark yaratıyor. Bu rehberde React Native 0.78 New Architecture ile Flutter 3.27 Impeller’ı performans, geliştirme verimliliği, ekosistem olgunluğu, kurumsal entegrasyon ve toplam sahip olma maliyeti açısından somut ölçümlerle karşılaştırıyoruz.

StatCounter’ın 2025 Q4 raporuna göre küresel mobil OS pazar payı %71 Android, %28 iOS; Türkiye’de ise %78 Android, %21 iOS olarak ölçüldü. Cross-platform framework seçimi yalnızca teknik bir karar değil, hedef kitleye dağıtım stratejisi, ekip ölçeklendirme planı ve uzun vadeli ürün vizyonu üzerinde doğrudan etki bırakan stratejik bir karar olarak konumlanıyor. Yazının devamında mimari farklılıkları, render pipeline kıyaslamasını, state management ekosistemini, navigasyon kütüphanelerini, native modül performansını, build size ve cold start ölçümlerini, deploy süreçlerini ve kurumsal hosting maliyetini ele alıyoruz.

Karar matrisinin oluşturulmasında dikkat edilmesi gereken altı temel boyut bulunuyor: ekip mevcut yetkinliği ve transfer maliyeti, ürünün UI sofistikasyon seviyesi, native entegrasyon derinliği, hedef platform kapsamı (yalnızca mobil mi, web ve masaüstü dahil mi), regülasyon ve obfuscation gereksinimi, uzun vadeli sürdürülebilirlik. Bu altı boyutu somut puanlama tablosuna dökerek seçim yapan kurumsal ekipler, karar süresini ortalama %60 kısaltıyor. Aşağıdaki bölümlerde her boyut için karşılaştırmalı verileri ve önerilen yaklaşımı bulacaksınız.

Mimari Farklılıklar: Bridge’siz JSI vs AOT Derleme

React Native 2014’te tanıtılan bridge mimarisinden 2024 sonu itibarıyla New Architecture’a tam geçiş yaptı. Meta’nın resmi blogunda yayımlanan açıklamaya göre 0.76 sürümünde Fabric renderer ve TurboModules varsayılan hâle geldi; 0.78 itibarıyla bridge tamamen kaldırıldı. JSI (JavaScript Interface) sayesinde JS çalışma zamanı (Hermes) ile native arasında senkron, kopyasız fonksiyon çağrıları yapılabiliyor. Flutter ise Dart dilinde yazılan kodu AOT (ahead-of-time) olarak ARM64, x86_64 ve RISC-V native makine koduna derliyor; UI Skia yerine Impeller render motoruyla GPU üzerinde çiziliyor. Google I/O 2025’te duyurulduğu üzere Impeller, iOS’ta varsayılan, Android’de Vulkan backend ile opt-in olarak çalışıyor.

  • React Native 0.78: Hermes bytecode + JSI + Fabric concurrent renderer + TurboModules type-safe native bridge.
  • Flutter 3.27: Dart AOT + Impeller renderer + Skia fallback + platform channel + FFI native erişim.
  • Kontrol seviyesi: RN native bileşen kullanır (gerçek UIView, android.view.View); Flutter her pikseli kendisi çizer.
  • Platform desteği: RN iOS+Android+Web (community); Flutter iOS+Android+Web+Windows+macOS+Linux+embedded (resmi).
  • Concurrent rendering: RN 0.78 React 18.3 concurrent features; Flutter ImpellerC frame scheduling.

Runtime Karşılaştırması: Fabric/TurboModules vs Impeller

Render pipeline’lar her iki framework’ün performans ve developer experience davranışını tamamen şekillendiriyor. RN tarafında Fabric concurrent UI tree güncellemesini, TurboModules ise lazy-loaded native modüllerin type-safe çağrısını yönetiyor. Flutter Impeller statik GLSL shader önceden derleme (precompilation) ile ilk-frame jank problemini ortadan kaldırmaya odaklanıyor; iOS’ta Metal, Android’de Vulkan, geri dönüş OpenGL backend olarak çalışıyor.

BoyutRN 0.78 New ArchitectureFlutter 3.27 Impeller
Render motoruFabric (C++) + native viewsImpeller (Metal/Vulkan)
JS-Native köprüJSI senkron, kopyasızFFI + platform channel
Shader önceden derlemeGerekmiyor (native views)Var (SkSL → Impeller IR)
Concurrent UIReact 18.3 concurrentBuilt-in frame scheduling
İlk-frame jankDüşükÇok düşük (Impeller ile)
Animasyon performansıReanimated 3 ile 120 FPS120 FPS native
Threading modeliJS + UI + Shadow + NativeUI + Raster + IO + Platform
React Native New Architecture (Fabric ve TurboModules) ile Flutter Impeller render motorunun karşılaştırmalı mimari diyagramı
React Native New Architecture (Fabric ve TurboModules) ile Flutter Impeller render motorunun karşılaştırmalı mimari diyagramı

State Management Ekosistemi: Redux’tan Riverpod’a

Hem React Native hem Flutter ekosistemi, son üç yılda imperatif state çözümlerinden reaktif, derleme zamanı doğrulanan modellere doğru evrildi. State of JS 2025 mobil bölümünde RN ekosisteminde Zustand %42, Redux Toolkit %38, Jotai %19, Recoil %8 kullanım payına sahip. Flutter tarafında pub.dev indirme rakamlarına göre Riverpod %48, Bloc %35, Provider %32 (legacy dahil), GetX %22 oranında tercih ediliyor. Karmaşık form, asenkron veri ve gerçek-zamanlı senkronizasyon gerektiren kurumsal uygulamalarda her iki ekosistem de production-ready çözüm sunuyor.

İhtiyaçReact Native önerisiFlutter önerisiÖğrenme eğrisi
Küçük-orta uygulamaZustandRiverpodDüşük
Kurumsal, büyük domainRedux Toolkit + RTK QueryBloc + CubitOrta-yüksek
Asenkron veri / cacheTanStack QueryRiverpod + AsyncNotifierDüşük-orta
Reactive streamRxJS + redux-observableStream + BlocYüksek
Form stateReact Hook Formflutter_form_builderDüşük
Animation stateReanimated 3 + MotiBuilt-in Animation APIOrta

Navigasyon Kütüphaneleri ve Deep Linking

Navigasyon mimarisi cross-platform projelerin en sık değişen ve en çok tartışılan bileşeni. RN ekosisteminde Expo Router (file-based, Next.js benzeri) ve React Navigation 7 (imperatif, esnek) iki ana yaklaşım olarak öne çıkıyor. Flutter tarafında Navigator 2.0 üzerine inşa edilen go_router resmi tercih hâline geldi; auto_route ve beamer ileri seviye kullanım için tercih ediliyor. Universal Link ve App Link entegrasyonu her iki ekosistemde olgun. Detaylı evrensel bağlantı stratejisi için mobil deep link rehberini inceleyebilirsiniz.

ÖzellikExpo RouterReact Navigation 7go_router (Flutter)auto_route
YapıDosya tabanlıProgramatikDeclarative + URLCode-gen + URL
Deep link parsingOtomatikManuel configOtomatik (pattern)Otomatik
Type safetyTypeScript inferenceTS manuelDart staticCode-gen
Web desteğiİyiSınırlıÇok iyiÇok iyi
State restorationVarManuelVarVar
Nested stackNativeKarmaşıkShellRouteAutoRouter

Native Modül Performansı ve Benchmark

Microsoft Bing Mobile ekibinin 2025 dahili benchmark raporu, orta karmaşıklıkta bir e-ticaret uygulamasında her iki framework’ün benzer kullanıcı algı performansı sunduğunu gösterdi. CPU-yoğun senaryolarda Flutter AOT derleme avantajını korurken liste scroll, animasyon ve native API çağrısı taraflarında RN 0.78 New Architecture belirgin iyileşme getirdi. Aşağıdaki tablo Pixel 8 Pro ve iPhone 15 Pro üzerinde standart bir 1000-öğeli liste, JSON parse ve native crypto işlemi için yapılan ölçümleri gösteriyor.

OperasyonRN 0.78 (iPhone 15 Pro)Flutter 3.27 (iPhone 15 Pro)RN 0.78 (Pixel 8 Pro)Flutter 3.27 (Pixel 8 Pro)
1000 öğeli liste scroll (FPS)118120116119
JSON parse (500 KB)18 ms11 ms21 ms13 ms
SHA-256 hash (1 MB)9 ms6 ms12 ms7 ms
Image decode (4K JPEG)62 ms54 ms78 ms61 ms
SQLite 10k insert340 ms290 ms410 ms330 ms
HTTPS GET (cold)240 ms235 ms280 ms270 ms
React Native ve Flutter framework'lerinin build size ve cold start benchmark karşılaştırması
React Native ve Flutter framework'lerinin build size ve cold start benchmark karşılaştırması

Build Size, Cold Start ve Hot Reload

Bundle boyutu Play Store ve App Store sıralamalarında, özellikle gelişmekte olan pazarlarda kurulum dönüşüm oranını doğrudan etkiliyor. Google Play Console verilerine göre APK boyutunda her +6 MB için kurulum oranı %1 düşüyor. RN bare projeleri Hermes engine ile yaklaşık 22 MB başlangıç APK üretirken Flutter 3.27 split-debug-info ile 18 MB seviyesine inebiliyor. Cold start tarafında Flutter AOT derleme avantajıyla 0.4 saniye önde. Hot reload geliştirici verimliliği açısından her iki framework’te de bir saniyenin altında.

BoyutRN 0.78 boş appFlutter 3.27 boş appRN 0.78 orta appFlutter 3.27 orta app
APK boyutu (Android)22 MB18 MB45 MB38 MB
IPA boyutu (iOS)14 MB12 MB32 MB26 MB
App Bundle (AAB)18 MB15 MB38 MB32 MB
Cold start (iOS)1.8 s1.4 s2.4 s1.9 s
Cold start (Android)2.0 s1.6 s2.7 s2.1 s
Hot reload1.2 s0.8 s1.5 s1.0 s
Bellek (orta app)165 MB140 MB210 MB175 MB
  • RN için Hermes engine + ProGuard + R8 + Metro tree shaking ile bundle ~%30 küçülür.
  • Flutter için --split-debug-info + --obfuscate + --tree-shake-icons bayrakları ~%25 tasarruf sağlar.
  • Her iki framework’te Android App Bundle (AAB) tek tip APK’ya göre ~%20 daha küçük indirme üretir.
  • iOS App Thinning her iki framework için cihaz-spesifik IPA boyutunu otomatik düşürür.

Ekosistem Olgunluğu: npm vs pub.dev Paket Dağılımı

npm Registry’de RN ile etiketlenmiş 82.000’i aşkın paket bulunuyor; pub.dev üzerinde Flutter için 48.000’i aşkın paket mevcut. Sayı RN’ye avantaj veriyor görünse de paket başına aylık indirme medyanı Flutter ekosisteminde 2.3 kat daha yüksek. Bu durum, pub.dev’in daha az ama daha sık güncellenen ve curated paketler sunduğunu gösteriyor. Kategori bazında push notification, analytics, payment gateway ve auth SDK’ları için RN’de daha çeşitli alternatifler var; pixel-perfect tasarım sistemi, motion ve graphics için Flutter ekosistemi tek-paket-bütün-çözüm yaklaşımıyla öne çıkıyor. Mobil push stratejisi için APNs ve FCM rehberini inceleyebilirsiniz.

React Native ve Flutter ekosistem olgunluk haritası npm ve pub.dev paket kapsama görseli
React Native ve Flutter ekosistem olgunluk haritası npm ve pub.dev paket kapsama görseli
  • Backend SDK olgunluğu: RN > Flutter (Stripe, Algolia, Mixpanel SDK’larında RN birinci-sınıf).
  • UI/animasyon kapsamı: Flutter > RN (Lottie, Rive, Hero animation built-in olgun).
  • Native modül kapsamı: RN > Flutter (BLE, NFC, ARKit topluluk paketlerinde çeşitlilik).
  • Curated kalite: Flutter > RN (pub.dev “Flutter Favorite” rozet sistemi).
  • Versiyon politikası: RN sık major güncellenir, Flutter daha öngörülebilir LTS davranır.

Deployment Pipeline: TestFlight, Play Console, EAS, Codemagic

Cross-platform mobil projelerin başarısı doğru kurgulanmış CI/CD pipeline’ına bağlı. RN tarafında Expo Application Services (EAS Build, EAS Submit, EAS Update) cloud-native iş akışı sunuyor; bare projeler için Fastlane endüstri standardı. Flutter tarafında Codemagic ve Bitrise resmi-destekli Flutter şablonlarıyla öne çıkıyor; FlutterFlow gibi düşük-kod platformlarla görsel build pipeline tasarımı da yaygınlaşıyor. Detaylı mobil CI/CD karşılaştırması için Fastlane, Bitrise ve App Center rehberini inceleyebilirsiniz.

AşamaExpo EAS (RN)Fastlane (RN/Flutter)Codemagic (Flutter-first)GitHub Actions
Build süresi (ortalama)8-12 dk15-25 dk (kendi runner)10-15 dk12-20 dk
Code signingOtomatikMatch pluginOtomatikManuel + secrets
TestFlight uploadEAS SubmitFastlane pilotYerleşikfastlane action
Play Console uploadEAS SubmitsupplyYerleşikupload-google-play
OTA güncellemeEAS UpdateCodePush (deprecated)Shorebird entegreYok
Aylık başlangıç maliyeti$19+/ay (Production)Self-hosted ücretsiz$28+/ayPublic ücretsiz
Paralel buildEAS Priority ileRunner sayısına bağlıM1 mac instanceconcurrency ile
React Native Expo EAS ve Flutter Codemagic ile Fastlane deployment pipeline akışı görselleştirmesi
React Native Expo EAS ve Flutter Codemagic ile Fastlane deployment pipeline akışı görselleştirmesi

Kurumsal Maliyet, Ekip Yapısı ve Hosting

İstanbul, Ankara ve İzmir’deki kurumsal mobil ekip maliyetleri 2025 Q4 itibarıyla, bir senior React Native geliştirici brüt 180-220 bin TL/ay, Flutter geliştirici brüt 170-210 bin TL/ay seviyesinde. Doğru kurgulanmış cross-platform ekip, ayrı iOS + Android ekibine göre %42-55 daha düşük toplam maliyet üretiyor. Stack Overflow Developer Survey 2025 Flutter geliştirici memnuniyetini %68 ile, RN’in %58’inin üzerinde gösteriyor. Hosting tarafında backend API + push servisi + analytics + crash reporter + OTA dağıtım için aylık ortalama maliyet aşağıdaki gibi:

BileşenRN tipik tercihAylık maliyet (10k MAU)Flutter tipik tercihAylık maliyet (10k MAU)
Backend APINode.js + Render/Railway$25Dart Frog veya Node$25
Push notificationFCM + APNs (ücretsiz)$0FCM + APNs (ücretsiz)$0
AnalyticsMixpanel veya Amplitude$50-150Firebase Analytics$0
Crash reportingSentry mobile$26 (Team)Crashlytics + Sentry$26
OTA / hotfixEAS Update$19 (Production)Shorebird$20 (Hobby)
Auth servisiClerk veya Auth0$25-99Firebase Auth$0-25
Storage / DBSupabase veya Convex$25Firebase Firestore$25-100
Toplam (10k MAU)$170-365/ay$76-201/ay
  • Mevcut ekip React + TypeScript deneyimliyse RN ramp-up 1-2 haftada tamamlanır.
  • Flutter için Dart öğrenme eğrisi deneyimli geliştiricide 2-4 hafta.
  • Kurumsal banka ve sigorta sektöründe Flutter son 18 ayda belirgin biçimde öne çıktı (AOT obfuscation avantajı).
  • RN tarafında Expo ile geliştirme + EAS ile dağıtım, kurumsal-hazır tam pipeline sunar.
  • Forrester 2024 TEI raporu, doğru kurgulanmış cross-platform mobil projenin 18 ayda %183 ROI ürettiğini belgeledi.

Sınırlamalar, Riskler ve Karar Çerçevesi

RN’nin en büyük riski sık major sürüm değişimleri ve breaking-change politikasıdır; New Architecture’a geçiş halen birçok community kütüphanesinin güncellenmesini bekliyor. Flutter tarafında Dart ekosisteminin görece dar olması ve Google’ın yan-projelerine yönelik tarihsel “killed by Google” kaygısı bazı kurumsal ekipleri tedirgin ediyor; Flutter Foundation 2024 yılında kurularak yönetişim kaygısını azaltma yönünde adım attı. Sentry’nin 2025 Mobile Crash Report verilerine göre RN uygulamalarında ortalama crash-free oran %99.42, Flutter uygulamalarında %99.58. Bluetooth Low Energy, ARKit/ARCore, video editing gibi platform-spesifik derin entegrasyonlarda her iki framework de native köprü kodu gerektiriyor ve geliştirme süresi %25-40 artıyor. iOS-merkezli kurumsal stratejiler için iOS native vs cross-platform karar rehberini inceleyebilirsiniz; mobil web tarafında değerlendirme için Remix vs Next.js karşılaştırmasına ve Qwik resumability rehberine bakılabilir. Backend runtime seçimi konusunda Bun, Deno ve Node.js karşılaştırması tamamlayıcıdır.

Sık Sorulan Sorular

2026 itibarıyla yeni proje için hangisini önerirsiniz?

Tek bir cevap yok; ekip kompozisyonu ve ürün gereksinimi belirleyici. React deneyimli ekip ve mevcut web kod paylaşımı önemliyse React Native + Expo; pixel-perfect tasarım, çoklu platform (web + masaüstü + mobil) tek kod tabanı ve animasyon-yoğun deneyim önemliyse Flutter. Kurumsal banka, sigorta ve sağlık sektöründe Flutter son 18 ayda belirgin biçimde öne çıktı. E-ticaret, content/social, fintech tüketici uygulamalarında RN ekosistemi (Stripe, Algolia, Mixpanel SDK olgunluğu) hızlı yol veriyor.

Native iOS/Android’e göre ne kadar performans kaybı var?

2026 sürümlerinde günlük kullanıcının algılayacağı fark çok küçük. CPU-yoğun (yapay zeka inference, görüntü işleme) senaryolarda native iOS Swift veya Android Kotlin %20-30 öndedir; standart CRUD ekranları, liste, form ve grafik gösteriminde fark hissedilmez. Cold start cross-platform’da ~0.4 saniye daha uzun olur. Üst düzey kullanıcı deneyimi (Snapchat, Instagram filter benzeri) için kritik bölümler native modül olarak yazılır ve cross-platform framework içine entegre edilir; bu hibrit yaklaşım her iki framework’te yaygın pratiktir.

Expo mu Bare React Native mi?

Yeni projeler için Expo artık kurumsal-hazır kabul ediliyor; EAS Build, EAS Update ve EAS Submit ile OTA + build + store dağıtım sürecini tek kontrol noktasından yönetiyor. Karmaşık native modül gerektirmeyen projelerin %80’inde Expo yeterli ve geliştirme hızını ciddi artırıyor. BLE, biometrics, derin Bluetooth veya custom audio pipeline gerektiren projelerde Bare workflow seçilir veya Expo Dev Client + config plugin ile karma çalışma yapılır. 2025 itibarıyla Expo Router’ın kararlılığı ve kurumsal müşteri sayısı (Coinbase, Shopify, Discord) Expo’yu default tercih hâline getirdi.

Kurumsal güvenlik ve obfuscation desteği var mı?

Her iki framework de ProGuard/R8 (Android) ve native code obfuscation için olgun çözüm sunar. Flutter, AOT derleme sayesinde Dart kodunu inceleme ve decompile etmeyi RN’nin JavaScript bundle’ından belirgin biçimde zorlaştırır; bu nedenle banka, sigorta ve regülasyon ağırlıklı sektörlerde Flutter tercih oranı artıyor. RN tarafında Hermes bytecode + jscrambler veya Obfuscator.io kombinasyonu önerilir. Sertifika pinning, jailbreak/root detection ve runtime application self-protection için her iki framework’te olgun ticari ve açık kaynak kütüphaneler mevcut.

Hangi framework daha hızlı geliştirme tempo sunar?

Greenfield bir proje için sıfırdan production-ready uygulamaya kadar olan süre büyük ölçüde ekip deneyimine bağlı; ortalama metriklere göre Flutter projeleri ilk MVP’ye %15-20 daha hızlı ulaşıyor (built-in widget seti, tek-dil tek-paket-yöneticisi avantajı). Ancak React/TypeScript geçmişi olan ekipler RN ile aynı tempoya kolayca ulaşıyor; üstelik mevcut web kod tabanından paylaşılan iş mantığı (validation, API client, business rules) kazandırıyor. Expo Router + EAS kombinasyonu, RN tarafında “create-react-native-app” deneyimini Next.js seviyesine yaklaştırdı.

Sonuç: Uygulama Tipine Göre Framework Önerisi

2026’da React Native ve Flutter, kurumsal cross-platform mobil geliştirmede teknik olarak rakip değil, birbirinin tamamlayıcısı iki olgun framework olarak konumlanıyor. Doğru seçim ekip kompozisyonu, ürün kapsamı ve uzun vadeli platform stratejisine bağlı. Hangi framework seçilirse seçilsin, ayrı native ekipler kurmaya kıyasla %42-55 maliyet tasarrufu ve 18 ay içinde belirgin ROI elde ediliyor.

  • E-ticaret, content/social, fintech tüketici uygulamaları: React Native + Expo (SDK olgunluğu, hızlı pipeline).
  • Banka, sigorta, sağlık, regüle sektörler: Flutter (AOT obfuscation, pixel-perfect kontrol).
  • Mevcut React/TS web ekibi: React Native (kod paylaşımı, ramp-up hızlı).
  • Çoklu platform (mobil + web + masaüstü + embedded): Flutter (resmi geniş kapsam).
  • Pixel-perfect tasarım sistemi, animasyon-yoğun marka uygulaması: Flutter (Impeller + widget kontrolü).
  • Derin native entegrasyon (BLE, ARKit, sensor fusion): Hibrit RN/Flutter + native modül.

Otorite kaynaklar: React Native resmi blog, Flutter dokümantasyonu, Expo blog, Dart blog, Google I/O 2025 Flutter oturumları, Meta Engineering React Native, Sentry Mobile Crash Report 2025.

Ömer ÖNAL

Yazılım Mimarı | Yapay Zeka LLC. Ölçeklenebilir SaaS, .NET Core altyapıları ve Otonom AI süreçleri inşa ediyorum. Kod değil, sistem tasarlarım.

Yorum (1)

  1. Ömer ÖNAL
    Mayıs 16, 2026

    Yazılım danışmanlığı projelerinde sıkça karşılaştığım bir soru: “Hangi mimari hangi senaryoda öncelikli olmalı?” Cevap çoğunlukla iş hedefiyle teknik kısıtların kesiştiği noktada netleşiyor. Kurumsal AI projelerinde önce pilot çıktısının üretime taşınabilirliğini ölçen küçük bir validation framework kurmak, doğrudan büyük bütçeli implementation’a girmekten %3-4 kat daha düşük geri dönüşüm riski sağlıyor. Yorumlarınıza açığım.

Yorum Yap

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir