top of page

PWA nedir? Progressive web app'in avantajları ve dezavantajları

PWA nedir sorusu, web geliştirme ve dijital pazarlama gündeminde giderek daha fazla yer buluyor; progressive web app (aşamalı web uygulaması), native mobil uygulama özellikleri taşıyan ancak yalnızca web teknolojileriyle inşa edilen bir uygulama yaklaşımıdır.

Kullanıcı bir PWA'yı tarayıcıdan açar, ana ekrana ekleyebilir ve ağ bağlantısı olmadan bile temel işlevleri kullanabilir. App Store veya Google Play'e gerek yoktur. Bu özellik, PWA'yı hem geliştirme maliyeti hem de erişim kolaylığı açısından cazip kılar. Ancak her proje için ideal bir çözüm olmadığını baştan belirtmek gerekir.

PWA nedir ve hangi temel teknolojilere dayanır?

PWA nedir sorusunun teknik yanıtı üç temel bileşenle verilir:

Service worker: Tarayıcı ile sunucu arasında çalışan bir JavaScript katmanıdır. Ağ isteklerini yakalar, önbellekleme stratejisi uygular ve bağlantı kesildiğinde kullanıcıya önbelleğe alınmış içeriği sunar. Offline çalışabilme ve arka plan senkronizasyonu bu katman sayesinde mümkün olur.

Web app manifest: JSON formatında bir yapılandırma dosyasıdır. Uygulamanın adını, ikonunu, başlangıç URL'sini ve ekran modunu (tam ekran, standalone vb.) tanımlar. Tarayıcı bu dosyayı okuyarak "Ana ekrana ekle" önerisini sunar.

HTTPS zorunluluğu: PWA yalnızca güvenli bağlantı (HTTPS) üzerinde çalışır. Bu hem bir gereklilik hem de kullanıcı güveni açısından bir artıdır.

Bu üç bileşene ek olarak push notification desteği, arka planda veri senkronizasyonu ve cihaz kamerası gibi donanım özelliklerine erişim, PWA'nın native uygulama deneyimine yaklaşmasını sağlar.

Service worker ve offline destek nasıl çalışır?

PWA nedir sorusunu derinleştiren en önemli kavram service worker'dır. Bir service worker kurulduğunda, belirli URL'lerin yanıtlarını Cache API aracılığıyla depolar. Kullanıcı bir sonraki ziyaretinde veya bağlantı kesildiğinde, service worker önbelleğe aldığı yanıtı doğrudan sunar.

Önbellekleme stratejileri arasında en yaygın kullanılanlar şunlardır:

  • Cache first: Önce önbelleğe bakar; yoksa ağa gider. Statik içerikler için idealdir.

  • Network first: Önce ağa gider; bağlantı yoksa önbellekten sunar. Sık güncellenen içerikler için tercih edilir.

  • Stale while revalidate: Önbellekten sunar, arka planda ağdan günceller. Hız ve güncellik dengesini kurar.

Türkiye'deki mobil kullanıcıların önemli bir bölümü zayıf ağ koşullarında gezinir. Bu nedenle iyi yapılandırılmış bir offline strateji, hem kullanıcı deneyimini hem de oturma süresini olumlu etkiler.

PWA vs native uygulama: Maliyet, erişim ve özellik karşılaştırması

PWA nedir sorusuna verilen yanıtların en pratik boyutu, native uygulama ile karşılaştırmadır.

Maliyet: Bir iOS + Android native uygulama çifti, PWA'ya kıyasla genellikle 3-5 kat daha pahalıdır. PWA tek bir kod tabanıyla hem masaüstü hem mobilde çalışır.

Erişim: Native uygulama App Store veya Play Store'a listelenmek ve onay sürecinden geçmek zorundadır. PWA ise doğrudan URL ile erişilebilir; güncelleme anında yayınlanır ve herhangi bir mağaza onayı gerektirmez.

Özellikler: Native uygulama, cihazın tüm donanım ve sistem API'lerine (Bluetooth, NFC, arka plan ses oynatma, push kısıtlaması olmadan) erişebilir. PWA bu açıdan sınırlıdır; özellikle iOS Safari'de push notification hâlâ kısıtlı çalışır (iOS 16.4 itibarıyla iyileşmiş olsa da tam destek yoktur).

Keşfedilebilirlik: Native uygulama mağaza listeleriyle organik keşif sağlar; PWA ise yalnızca web aramaları ve direkt URL paylaşımıyla erişilir. SEO yapılandırması doğruysa bu fark kapanır.

Türkiye'den örnek vermek gerekirse Trendyol, hem native uygulama hem de mobil web deneyimini paralel yürütür; Getir ise hız odaklı PWA özellikleri kullanarak düşük bağlantı koşullarında bile erişilebilirlik sağlamayı hedeflemiştir.

Lighthouse PWA skoru ve teknik gereksinimler

Google Lighthouse, bir web sitesinin PWA uyumluluğunu puanlamak için kullanılabilir. Lighthouse denetiminde PWA kategorisi şu kriterleri değerlendirir:

  • HTTPS zorunluluğu karşılanıyor mu?

  • Web app manifest eksiksiz mi (name, short_name, start_url, display, icons)?

  • Service worker kayıtlı ve etkin mi?

  • Kullanıcıya "Ana ekrana ekle" istemi gösterilebiliyor mu?

  • Uygulama çevrimdışı çalışıyor mu (en azından temel ekranı gösteriyor mu)?

Lighthouse'un PWA skoru, SEO veya performans skoru kadar doğrudan sıralamayı etkilemez. Ancak yüksek bir PWA skoru, sayfa hızı ve Core Web Vitals gibi sıralama faktörleriyle dolaylı ilişkilidir.

E-ticaret siteleri için PWA değerlendirmesi

PWA nedir sorusu e-ticaret bağlamında ele alındığında, cevap hem avantajları hem de sınırlamaları içerir.

Avantajlar:

  • Hızlı yükleme: Service worker önbelleklemesi, ürün sayfalarının ilk yükleme sonrasında anlık açılmasını sağlar.

  • "Ana ekrana ekle" özelliği: Mobil alışveriş yapan kullanıcının tekrar ziyaret oranını artırır.

  • Push notification: Sepet hatırlatma, fiyat düşme bildirimi gibi uyarılar native uygulama gerektirmeden gönderilebilir.

Sınırlamalar:

  • Apple Pay ve bazı ödeme entegrasyonları PWA'da native uygulamaya göre daha kısıtlı çalışabilir.

  • Kamera tabanlı AR (artırılmış gerçeklik) denemeleri (örneğin "ürünü evinde görüntüle") native uygulamada çok daha olgunlaşmıştır.

  • Mağaza keşfi olmadığından kullanıcı edinimi tamamen web trafiğine bağlıdır.

Küçük ve orta ölçekli e-ticaret siteleri için öncelik genellikle mobil uyumlu, hızlı bir web sitesi kurmak ve ardından PWA özelliklerini kademeli olarak eklemektir.

Sık Sorulan Sorular

PWA nedir, normal web sitesinden farkı nedir?

Normal bir web sitesi her ziyarette sunucuya istek gönderir; PWA ise service worker aracılığıyla önbellekleme yapar, offline çalışabilir ve ana ekrana eklenebilir. Kullanıcı deneyimi açısından native uygulamaya benzer bir his verir.

PWA yapmak için hangi teknoloji yeterlidir?

Temel düzeyde HTML, CSS ve JavaScript bilgisi; service worker API ve Cache API ile çalışabilecek düzeyde yeterlidir. Workbox (Google'ın açık kaynak kütüphanesi) service worker karmaşıklığını büyük ölçüde azaltır. React, Vue veya Angular gibi framework'ler PWA desteğini kolaylaştırır.

iOS'ta PWA push notification çalışır mı?

iOS 16.4 sürümünden itibaren Ana Ekrana eklenen PWA'larda push notification desteği kısmen gelmiştir. Ancak tarayıcı içinde (Safari'de açıkken) push bildirim göndermek hâlâ mümkün değildir. Bu kısıtlama, iOS kullanıcı tabanı yüksek olan Türkiye pazarında göz önünde bulundurulmalıdır.

Blakfy olarak PWA nedir sorusundan uygulamaya geçiş sürecine kadar web teknolojisi kararlarını işletmenizin büyüme hedefleriyle hizalayarak değerlendiriyoruz.

bottom of page