logoEN

EN

Tüm yazılar
MobileReact Native

Mobil geliştirme: Native mi, cross-platform mu? Uzun vadeli maliyet analizi

Native: iki platform iki gerçek

Apple ve Google ekosistemleri yılda birkaç kez kırılma (breaking) değişiklik çıkarır. Notification izin politikalarından arka plan kısıtlarına dek davranış farkları artar. Native yaklaşım bu iğne ucu detayların her birini platformun resmi araç zinciri ile optimize etmenize izin verir; animasyon zaman çizelgelerinden bellek grafik profiler’larına kadar inme özgürlüğünüzdür. Fakat özellik hizalı iki uygulamayı paralel yazmak zaman ve zihinsel bağlam maliyeti ister — aynı ekranın iOS ile Android varyantında farklı edge-case tuzakları sık sık yakalar.

Cross-platform: paylaşım yüzdesi ve köprü gerçeği

React Native veya Flutter gibi çatılar “tek repo” vaadini pazarlar; pratikte çoğu ürün %60–%90 arası paylaşım bandında yaşıyor — kalan kısım native modül, platform-spesifik stil veya üçüncü parti SDK’ların zorunlu entegrasyon katmanı oluyor. Bu köprü maliyetini erken hesaplamazsanız sprint planınız ‘son iki gün iOS build’ kaosuna kayar. New Architecture (RN) gibi evrimler JS–native sınırındaki zamanlamayı iyileştirir ancak “sıfır köprü” demek değildir.

Expo vs ham RN: teslim vs kontrol tayfı

Expo ile hızlı prototip ve Managed workflow yöneticiliği onboarding’ı ucuzlatırken, bankacılık SDK’sı ya da özelleştirilmiş native kütüphane gerekiyorsa eject/custom dev client gereksinimi doğabilir. Ham RN projede Gradle/Xcode derinliklerine daha erken nüfuz edersiniz; bu da ilk çeyrekte daha ağır ama uzunda daha esnek olabilir. Doğru soru şudur: “hangi yüzdelik blokaj sıklığında kim native derin dalış yapmalı?”

Performans bütçesi ve mağaza ince işleri

Animasyon jitter, liste kaydırması veya büyük görsel blokları kullanıcıyı daha hızlı terk etmeye götürür (özellikle düşük uçlu cihaz segmanında). Cross-platform yaklaşımlarda erken profiling + native optimizasyon geçiş planı olmadan büyümek risklidir. Ayrıca App Store / Play Store metadata, gizlilik manifestleri (ATT, veri toplama metinleri) release ritmi boğar — native veya değil, release mühendisliği ayrı bir skill set’tir.

Karar matrisi (genişletilmiş)

  • Küçük ekip + hızlı öğrenme eğrisi + web–React deneyimi → RN (veya Expo) genelde net kazanç.
  • Sık native-only hardware entegrasyonu + derin platform animasyonu → native veya hibrit ekip modeli.
  • Regülasyonlu SDK’lar: hem iOS hem Android entegrasyon senaryolarını POC öncesi iki haftada doğrulayın.
  • Uzun vadede modüler monorepo (paylaşılan TS domain modelleri) maliyeti düşürür — UI paylaşımı olmasa bile.
  • Test stratejisi: Detox/Maestro + platform snapshot + gerçek cihaz bankası bütçelenmeli.