Mobil · 10 dk okuma

Mobil Uygulama mı, PWA mı? Doğru Tercih Hangisi?

Native uygulama, çapraz platform ve PWA seçeneklerini maliyet, performans ve kullanıcı deneyimi açısından karşılaştırıyoruz.

Bir projeye başlarken sık duyduğumuz soru şudur: "Mobil uygulama mı yaptırsak, PWA mı yeterli olur?" Doğru cevap tek bir teknolojide değil, işin hedefinde gizlidir. Bu rehberde mobil uygulama mı PWA mı ikilemini üç ana yaklaşım üzerinden karşılaştırıyoruz — native uygulama, çapraz platform ve PWA — ve hangi senaryoda hangisinin daha akıllı bir yatırım olduğunu somut kriterlerle ortaya koyuyoruz.

Asıl Soru "Uygulama mı" Değil, "Hangi Yaklaşım"

Mobil dünyada "uygulama" tek bir şey değildir. Aynı ekranda görünen üç farklı ürün, arka planda tamamen farklı teknolojiler, maliyetler ve bakım yükleriyle inşa edilir. Bu yüzden "uygulama yaptıralım" kararı, tek başına bir yön çizmez; asıl kritik seçim, o uygulamanın hangi yaklaşımla geliştirileceğidir. Yanlış yaklaşım seçilirse, bir tarafta gereksiz yere iki katına çıkan geliştirme bütçesi, diğer tarafta kullanıcıyı kaybettiren performans sorunları çıkar. Doğru seçim ise; hedef kitlenizin cihaz alışkanlıkları, ihtiyaç duyduğunuz donanım özellikleri ve bütçenizin buluştuğu noktadadır.

Bu kararı sağlıklı vermek için önce üç yaklaşımın ne olduğunu, birbirinden nerede ayrıldığını netleştirmek gerekir. Konunun temeli olan web yazılımın front-end ve back-end mantığını daha önce ayrıntılı ele almıştık; burada odağımız doğrudan mobil tarafın karar mekanizması olacak.

Üç Yaklaşımı Tanıyalım

Native, çapraz platform ve PWA; aynı sorunu farklı denge noktalarıyla çözer. Her birinin güçlü ve zayıf yönlerini bilmek, karşılaştırma tablosunu okumadan önce zemini hazırlar.

Native (Yerel) Uygulama

Native uygulama, her platform için o platformun kendi diliyle ayrı ayrı geliştirilir: iOS tarafında Swift/SwiftUI, Android tarafında Kotlin. Bu, iki ayrı kod tabanı anlamına gelir — ama karşılığında en yüksek performansı, en akıcı animasyonları ve cihazın tüm donanımına eksiksiz erişimi verir. Kamera, GPS, Bluetooth, NFC, biyometrik kimlik doğrulama ve arka plan servisleri gibi tüm yeteneklere ilk günden tam destekle native uygulamalar ulaşır. Yoğun grafik, gerçek zamanlı işleme veya donanımı sınırda kullanan uygulamalarda native hâlâ tartışmasız tercihtir.

Çapraz Platform (React Native, Flutter)

Çapraz platform yaklaşımı, tek bir kod tabanından hem iOS hem Android uygulaması üretme fikrine dayanır. En yaygın iki teknoloji React Native (Meta) ve Flutter (Google)'dır. Bu yaklaşım, native'e çok yakın bir performans sunarken geliştirme süresini ve maliyetini belirgin biçimde düşürür; çünkü ekip iş mantığının büyük kısmını bir kez yazar. Donanım erişimi çoğu senaryoda eklenti/köprü katmanları üzerinden sağlanır — standart ihtiyaçların neredeyse tamamı karşılanır, ancak çok özel veya en yeni platform API'lerinde ek native geliştirme gerekebilir. Bugün pazardaki uygulamaların büyük bölümü için en dengeli seçenek çoğunlukla budur.

PWA (Progressive Web App)

PWA, aslında bir web sitesidir — ama uygulama gibi davranacak şekilde güçlendirilmiştir. Temelinde üç teknoloji vardır: HTTPS üzerinden servis, bir web app manifest dosyası ve arka planda çalışan service worker. Bu üçlü sayesinde PWA; ana ekrana ikon olarak eklenebilir, adres çubuğu olmadan tam ekran açılır, çevrimdışı çalışabilir ve (platform desteği ölçüsünde) bildirim gönderebilir. Ayrı bir kurulum, mağaza onayı veya indirme gerektirmez; kullanıcı bir bağlantıyla ulaşır. PWA'nın gücü, responsive web tasarımın doğal bir devamı olmasında yatar: tek bir kod tabanı hem masaüstünde tarayıcıda, hem mobilde uygulama benzeri deneyimde çalışır.

Bir de "Hibrit" Terimi Var: Kafa Karışıklığını Giderelim

Konuşmalarda sık geçen "hibrit uygulama", çoğu zaman kavramları birbirine karıştırır. Klasik anlamda hibrit uygulama; bir web arayüzünün, cihaza kurulan ince bir WebView kabuğunun içinde çalıştırılmasıdır (Cordova, Ionic, Capacitor gibi araçlarla). Yani aslında bir web uygulamasını mağazaya taşınabilir bir paket hâline getirir. Bu yaklaşım, PWA ile native arasında bir köprü gibi düşünülebilir: mağaza varlığı ve bazı native köprüleri kazandırır, ancak performans ve akıcılıkta genellikle gerçek native veya modern çapraz platform çözümlerinin gerisinde kalır.

Pratikte bugün "hibrit" arayan çoğu proje için doğru cevap ya modern bir çapraz platform (React Native/Flutter) ya da bir PWA'dır. Terimi net tutmakta fayda var: çapraz platform, native bileşenleri gerçek native olarak çizerken; klasik hibrit, her şeyi bir web görünümü içinde gösterir. Bu ayrım, performans beklentinizi baştan doğru kalibre etmenizi sağlar.

Detaylı Karşılaştırma: Native vs Çapraz Platform vs PWA

Aşağıdaki tablo, bir karar verirken en çok etkiye sahip sekiz kriteri yan yana koyuyor. Hiçbir sütun "her zaman en iyi" değildir; amaç, önceliklerinizin hangi sütunla örtüştüğünü görmenizdir.

Kriter Native Çapraz Platform PWA
Maliyet En yüksek (iki ayrı kod tabanı) Orta (tek kod, iki platform) En düşük (tek web kod tabanı)
Geliştirme süresi Uzun Orta Kısa
Performans En yüksek, tam akıcı Native'e çok yakın İyi; ağır grafik/işlemde sınırlı
Donanım erişimi Tam ve gün-0 destek Geniş (eklenti/köprü ile) Kısıtlı, tarayıcıya/platforma bağlı
Mağaza dağıtımı App Store + Play Store App Store + Play Store Mağaza yok; bağlantıyla erişim
Güncelleme Mağaza onayı gerekir Mağaza onayı gerekir Anında; yeniden yayınla, biter
SEO / keşfedilebilirlik İçerik indekslenmez İçerik indekslenmez Web olduğu için indekslenir
Çevrimdışı çalışma Tam kontrol Tam kontrol Var (service worker ile), sınırlı

Karar verirken sık yapılan hata, teknolojiyi baş tacı edip hedefi unutmaktır. "En güçlü" yaklaşım değil, "işinizin gerçekten ihtiyaç duyduğu" yaklaşım kazandırır — fazladan güç, çoğu zaman fazladan fatura demektir.

Hangi Durumda Hangisini Seçmeli?

Tablo neyin ne olduğunu gösterir; asıl değer, bunu kendi senaryonuza oturtmaktadır. Aşağıda sık karşılaştığımız durumlar ve önerdiğimiz yön var.

  • Yüksek performans ve derin donanım kullanımı gerekiyorsa (Native): Yoğun grafikli oyunlar, artırılmış gerçeklik (AR), gerçek zamanlı video işleme veya sürekli arka plan konum takibi gibi cihazı zorlayan uygulamalarda native seçimi güvenlidir.
  • İki platformda da güçlü bir uygulama, makul bütçeyle isteniyorsa (Çapraz Platform): E-ticaret, rezervasyon, sadakat, içerik ve çoğu servis uygulaması için React Native veya Flutter; hem mağaza varlığı hem de dengeli maliyet sunar.
  • Erişim, hız ve keşfedilebilirlik önceliğinizse (PWA): Kampanya siteleri, haber/blog platformları, kataloglar, self-servis portallar ve "önce web" stratejisi izleyen işler için PWA çoğu zaman en akılcı başlangıçtır.
  • Hızlı doğrulama (MVP) yapacaksanız (PWA veya Çapraz Platform): Fikri pazarda test etmek istiyorsanız, önce düşük maliyetli bir PWA ile başlayıp talep oluştuğunda native/çapraz platforma geçmek sağlıklı bir yol haritasıdır.

Somut bir örnek: Bir restoran zincirinin dijital menü ve online sipariş ihtiyacını ele alalım. Burada temel akış içerik gösterme, sepet ve ödemedir; derin donanım gereksinimi yoktur. Böyle bir proje için PWA, hem müşterinin QR koddan tek dokunuşla ulaşmasını hem de işletmenin tek kod tabanını yönetmesini sağlar. Ama aynı zincir, kuryelerin gerçek zamanlı konumunu arka planda kesintisiz takip eden bir teslimat uygulaması istiyorsa, orada tablo native veya çapraz platform lehine döner. Aynı işletme, farklı ihtiyaçlar için farklı yaklaşımlar kullanabilir — ve bu tamamen normaldir.

PWA Ne Zaman Yeterli, Ne Zaman Yetersiz?

PWA'nın en büyük yanılgısı iki uçtadır: kimisi onu "her derde deva" sanır, kimisi "ciddi iş yapılmaz" diye küçümser. Gerçek ikisinin arasındadır. PWA yeterlidir — eğer uygulamanız ağırlıklı olarak içerik gösterme, form doldurma, listeleme, sepet/ödeme akışı ve hafif etkileşimlerden oluşuyorsa. Bu senaryolarda kullanıcı, mağazadan indirme sürtünmesi yaşamadan tek dokunuşla ana ekranına ekler; siz de tek kod tabanını yönetirsiniz.

PWA yetersiz kalır — cihazın derinlerine inmeniz gerektiğinde. Gelişmiş Bluetooth/NFC senaryoları, arka planda kesintisiz servisler, üst düzey grafik performansı, mağaza içi ödeme ekosistemine bağımlılık veya kurumsal MDM (cihaz yönetimi) gereksinimleri varsa, PWA sınırlarına çarparsınız.

Özellikle iOS Kısıtlarına Dikkat

PWA kararının en kritik ayrıntısı iOS tarafındadır. Android, PWA'yı uzun süredir cömertçe destekler; iOS ise tarihsel olarak daha kısıtlıdır. Bilmeniz gereken temel noktalar:

  • Web push bildirimleri iOS'ta ancak iOS 16.4 (2023) ile ve yalnızca ana ekrana eklenmiş web uygulamaları için gelmiştir; Android'deki kadar sorunsuz ve yaygın değildir.
  • Donanım API'leri Safari/WebKit'te Chrome'a göre daha sınırlıdır; Web Bluetooth gibi bazı yetenekler iOS'ta desteklenmez.
  • Depolama ve önbellek yönetimi iOS'ta daha katıdır; uzun süre kullanılmayan verinin temizlenmesi ihtimali, tamamen çevrimdışıya bağımlı senaryolarda risk yaratır.
  • Mağaza görünürlüğü yoktur: App Store'da aranınca çıkmazsınız — kullanıcıya PWA'yı nasıl kuracağını sizin anlatmanız gerekir.

Bu yüzden hedef kitlenizin ağırlıklı olarak iPhone kullandığı ve bildirim/donanımın işin merkezinde olduğu projelerde, yalnız PWA'ya güvenmeden önce iki kez düşünmek gerekir.

Karar Verirken Kendinize Sorun

Doğru yaklaşımı, aşağıdaki soruları dürüstçe cevaplayarak büyük ölçüde daraltabilirsiniz:

  1. Uygulamamın kamera, Bluetooth, NFC, arka plan konumu gibi derin donanım erişimine gerçekten ihtiyacı var mı, yoksa "olsa iyi olur" seviyesinde mi?
  2. Hedef kitlem uygulamayı App Store/Play Store'da aramaya alışkın mı, yoksa bir bağlantıyla ulaşması yeterli mi?
  3. İçeriğimin Google'da bulunması (keşfedilebilirlik) benim için değerli mi?
  4. Bütçem ve zaman çizelgem, iki ayrı native kod tabanının bakımını kaldırır mı?
  5. Push bildirimi işimin can damarı mı, yoksa ikincil bir kanal mı?
  6. Fikri önce hızlı ve ucuz test etmem mi, yoksa ilk günden tam ölçekli çıkmam mı gerekiyor?

Bu soruların cevabı çoğunlukla tek bir yaklaşımı öne çıkarır. Emin olamadığınız noktada, keşfedilebilirlik tarafını güçlendirmek için SEO stratejinizi de bu kararla birlikte değerlendirmenizi öneririz; çünkü PWA'nın en büyük avantajlarından biri tam da web'de indekslenebilmesidir.

Maliyet ve Uzun Vadeli Bakım

Bir mobil projenin gerçek maliyeti, ilk geliştirme faturasında bitmez; asıl yük çoğu zaman bakım tarafındadır. Native yaklaşımda iki ayrı kod tabanını (iOS ve Android) ayrı ekipler veya ayrı uzmanlıklarla sürdürmeniz gerekir — her platform güncellemesinde iki kez test, iki kez düzeltme. Çapraz platformda bu yük tek kod tabanına indiği için bakım belirgin biçimde hafifler. PWA ise güncelleme açısından en rahatıdır: yeni sürümü yayınladığınız an tüm kullanıcılar en güncel hâli görür; mağaza onay süreçlerini ve "kullanıcı güncellemiyor" sorununu tamamen ortadan kaldırır.

Net bir rakam vermek yanıltıcı olur; maliyet, uygulamanın kapsamına, ekran sayısına, entegrasyonlarına ve hedef platform sayısına göre değişir. Karar verirken tek seferlik geliştirme bedelini değil, 2-3 yıllık toplam sahip olma maliyetini (bakım, güncelleme, mağaza ücretleri, ekip) hesaba katın. Çoğu işletme için doğru soru "en ucuz hangisi" değil, "bütçemin karşılığında en uzun ömürlü değeri hangisi verir" sorusudur.

Özetle

Native en güçlü ama en pahalı; çapraz platform en dengeli; PWA en hızlı ve en keşfedilebilir seçenektir. Doğru tercih, projenin donanım ihtiyacı, hedef kitlenin cihaz alışkanlığı ve bütçenin buluştuğu noktada belirlenir — teknolojiden değil, hedeften başlayın.

Sıkça Sorulan Sorular

PWA gerçek bir uygulama sayılır mı?

Teknik olarak PWA bir web uygulamasıdır, ancak kullanıcı deneyimi açısından bir uygulama gibi davranır: ana ekrana eklenir, tam ekran açılır, çevrimdışı çalışabilir ve bildirim gönderebilir. "Gerçek uygulama" tanımını mağazada yer almak olarak yaparsanız hayır; kullanıcının yaşadığı deneyim olarak yaparsanız evet. Çoğu içerik ve servis senaryosunda kullanıcı aradaki farkı hissetmez.

PWA'yı App Store veya Play Store'a koyabilir miyim?

Play Store, PWA'ları TWA (Trusted Web Activity) sarmalayıcısıyla kabul eder; yani Android tarafında PWA'nızı mağazaya taşımak mümkündür. App Store ise saf PWA'yı kabul etmez; iOS'ta mağaza varlığı istiyorsanız native veya çapraz platform bir sarmalayıcıya ihtiyaç duyarsınız. Bu ayrım, iOS ağırlıklı hedef kitlelerde kararı doğrudan etkiler.

React Native mi Flutter mı seçmeliyim?

İkisi de olgun ve güçlüdür; seçim çoğunlukla ekibinizin uzmanlığına ve projenin ihtiyacına bağlıdır. JavaScript/React ekosisteminde deneyimli bir ekip için React Native doğal bir devamdır. Tutarlı ve akıcı arayüz ile yüksek performans önceliğinizse Flutter güçlü bir adaydır. Doğru karar için mevcut ekibinizi ve uzun vadeli işe alım planınızı da hesaba katmak gerekir.

Önce PWA yapıp sonra native'e geçebilir miyim?

Evet ve bu, sık önerdiğimiz akıllı bir stratejidir. Fikri düşük maliyetli bir PWA ile pazara sürüp gerçek kullanıcı verisi toplarsınız; talep ve donanım ihtiyacı netleştiğinde native veya çapraz platform sürüme yatırım yaparsınız. Bu kademeli yol, riski azaltır ve bütçeyi kanıtlanmış ihtiyaca göre harcamanızı sağlar.

SEO açısından hangisi avantajlı?

Net biçimde PWA. Native ve çapraz platform uygulamaların içeriği Google tarafından web sayfası gibi indekslenmez; kullanıcı önce uygulamayı bulup indirmelidir. PWA ise bir web sitesi olduğu için arama sonuçlarında çıkar, bağlantı paylaşımıyla yayılır ve organik trafikten beslenir. Keşfedilebilirlik iş modelinizin merkezindeyse bu, tek başına belirleyici bir avantaj olabilir.

Çevrimdışı çalışması şartsa PWA yeter mi?

Hafif ve orta düzey çevrimdışı senaryolar için PWA'nın service worker altyapısı yeterlidir: son görüntülenen içeriği, form taslaklarını ve temel verileri önbelleğe alabilirsiniz. Ancak büyük veri setleri, karmaşık senkronizasyon veya cihazın kesintisiz arka plan işlemesi gerekiyorsa, native/çapraz platform daha güvenli kontrol sunar. Özellikle iOS'un katı önbellek politikaları, tamamen çevrimdışıya bağımlı işlerde dikkat gerektirir.

Doğru Yaklaşımı Birlikte Belirleyelim

"Mobil uygulama mı PWA mı" sorusunun tek bir doğru cevabı yoktur; doğru cevap, sizin işinizin hedefine, kitlesine ve bütçesine göre şekillenir. Web Factory olarak e-ticaret sitelerinden kurumsal web sitelerine, web tabanlı uygulamalardan mobil uygulamalara kadar tüm bu yaklaşımları geliştiriyor; performans ve güvenliği her projenin merkezine koyuyoruz. Hangi yolun sizin için en doğru yatırım olduğunu görmek için sunduğumuz hizmetleri inceleyebilir, projenizi konuşmak için bize ulaşabilirsiniz.

Projeniz için uzman görüşü mü lazım?

Blog yazılarımızın ötesinde, projenize özel değerlendirme için bizimle iletişime geçin.

WEBFACTORY