01Sorun ve çözüm
PWA, yani ilerlemeli web uygulaması, bu iki ucun arasında durur. Tarayıcıda bir adresle açılır, istenirse ana ekrana eklenir, son görülen içeriği çevrim dışıyken de gösterir ve desteklenen cihazlarda bildirim alabilir. Güncellemeler mağaza incelemesi beklemeden yayına girer, arama motorları içeriği bir web sitesi gibi indeksler.
Devamını okuDaha az göster
PWA geliştirme projelerinde ilk işimiz, ihtiyaç duyduğunuz cihaz özelliklerinin tarayıcıda gerçekten desteklenip desteklenmediğini kontrol etmektir. Bluetooth yazıcı, arka planda konum takibi ya da NFC gibi gereksinimler varsa bunu baştan söylüyor, gerekirse yerel uygulama ya da karma bir çözüm öneriyoruz.
02Kimler için
PWA uygulaması hangi projelere uygun
PWA, kullanıcının uygulama indirmeye hazır olmadığı ama web sitesinden fazlasını beklediği durumlarda öne çıkar.
- QR kodla açılan menü, sipariş ya da geri bildirim ekranı isteyen restoran, otel ve etkinlik işletmeleri
- Bayi ve temsilcilerine mağazaya çıkmadan sipariş ve katalog ekranı sunmak isteyen toptancılar ve üreticiler
- Mobil trafiği yoğun ama uygulama indirme isteği zayıf olan e-ticaret siteleri ve içerik yayıncıları
- Personeline şirket içi form, onay ve raporlama ekranlarını cihaz yönetimiyle uğraşmadan dağıtmak isteyen kurumlar
- Fikrini iki mağazanın inceleme sürecine girmeden gerçek kullanıcılarla denemek isteyen girişimler
03İhtiyaçlar
PWA ile yerel uygulama arasındaki sınırlar
PWA'nın güçlü ve zayıf yanlarını proje başında bilmek, sonradan yeniden yazma ihtiyacını önler.
- 01
iPhone ve iPad'deki farklar
Türkiye'de iPhone ve iPad'deki bütün tarayıcılar Apple'ın WebKit motorunu kullanır ve PWA desteği Android'e göre daha sınırlıdır. Bildirim için uygulamanın ana ekrana eklenmiş olması gerekir; arka planda eşitleme gibi bazı özellikler kullanılamaz.
- 02
Cihaz özelliklerine erişim
Kamera, konum, dosya seçme ve paylaşım tarayıcıdan rahatça kullanılır. Bluetooth, NFC ve sürekli arka plan konumu ise tarayıcıya ve işletim sistemine göre ya hiç ya da kısmen desteklenir.
- 03
Depolama ve çevrim dışı veri
Tarayıcılar cihazda yer azaldığında ya da uygulama uzun süre açılmadığında önbelleği silebilir. Bu yüzden çevrim dışı girilen veriler cihazda uzun süre bekletilmez, bağlantı geldiği anda sunucuya gönderilecek şekilde tasarlanır.
- 04
Mağaza görünürlüğü
PWA mağazada aranarak bulunmaz; kullanıcı ona web adresi, QR kod ya da arama motoru üzerinden ulaşır. Google Play'de yer almak gerekiyorsa PWA, Trusted Web Activity ile paketlenerek mağazaya gönderilebilir.
04Özellikler
PWA uygulaması projelerinde kurduğumuz yapı
İyi bir PWA, web sitesine eklenmiş bir manifest dosyasından ibaret değildir.
- 01
Önbellek stratejisi
Uygulama kabuğu, sık değişmeyen görseller ve son görüntülenen veriler service worker ile ayrı kurallarla önbelleğe alınır. Fiyat ya da stok gibi güncelliği önemli veriler her zaman önce sunucudan istenir.
- 02
Ana ekrana ekleme deneyimi
Simge, açılış ekranı ve tarayıcı çubuğu olmadan tam ekran görünüm ayarlanır. Ekleme önerisi, kullanıcıyı ilk saniyede rahatsız etmeyecek bir anda gösterilir.
- 03
Çevrim dışı form kuyruğu
Bağlantı yokken doldurulan formlar cihazda sıraya alınır; kullanıcı gönderilmeyi bekleyen kayıtları ekranda açıkça görür.
- 04
Güncelleme yönetimi
Yeni sürüm yayınlandığında kullanıcıya sayfayı yenileme önerilir; eski ve yeni önbelleğin karışıp hatalı ekran göstermesi engellenir.
05Entegrasyonlar
PWA'nın bağlandığı servisler
PWA da bir web uygulaması olduğu için arka plandaki sistemlere standart web yöntemleriyle bağlanır.
- 01
Arka uç API'leri
Ürün, sipariş, randevu ya da görev verisi mevcut sistemlerinizin API'sinden alınır; aynı API ileride yerel bir uygulamaya da hizmet edebilir.
- 02
Tarayıcı bildirimleri
Bildirimler Web Push standardıyla gönderilir. Android'de tarayıcı üzerinden çalışır, iPhone'da ise kullanıcı uygulamayı ana ekranına yerleştirdiyse devreye girer.
- 03
Ödeme sayfaları
Kart ödemesi iyzico, PayTR veya bankanızın sanal POS'u gibi altyapıların ödeme formuyla alınır. PWA mağazaya paketlenmediği sürece mağaza içi satın alma kuralları devreye girmez.
- 04
Analitik ve arama motoru
Sayfa görüntüleme, ana ekrana ekleme ve çevrim dışı kullanım ayrı olaylar olarak ölçülür; sunucuda oluşturulan sayfalar arama motorlarında indekslenir.
06Süreç
PWA uygulaması yaptırmak istiyorum: süreç nasıl işler?
Adım 01
Analiz
İş akışınızı, kullanıcılarınızı ve mevcut sistemlerinizi dinleriz; kapsamı, öncelikleri ve kabul ölçütlerini yazılı hâle getiririz.
Adım 02
Tasarım
Ekran akışlarını ve veri modelini çıkarırız. Arayüzü sizinle gözden geçirip onay almadan geliştirmeye geçmeyiz.
Adım 03
Geliştirme
Kısa döngülerle çalışırız; her döngü sonunda çalışan bir sürümü test ortamında görürsünüz.
Adım 04
Test
İşlevsel testler, entegrasyon testleri ve temel güvenlik kontrolleriyle hataları yayından önce yakalarız.
Adım 05
Yayın
Sunucu, alan adı, yedekleme ve izleme ayarlarını yaparak canlıya alırız; ekibinize kısa bir kullanım eğitimi veririz.
Adım 06
Bakım
İsterseniz bakım ve destek anlaşmasıyla güncellemeleri, izlemeyi ve yeni geliştirmeleri sürdürürüz.
07Teknoloji
Hız, önbellek ve güvenlik yaklaşımı
PWA'nın değeri ilk açılış hızında ölçülür, çünkü kullanıcı onu çoğu zaman bir QR koddan ya da arama sonucundan, zayıf bir mobil bağlantıyla açar. Sayfaları sunucu tarafında oluşturuyor, JavaScript yükünü ekran bazında bölüyor ve görselleri cihazın ekranına uygun boyutta sunuyoruz. Service worker devreye girdikten sonra ikinci ve sonraki açılışlar ağ beklemeden başlar.
Devamını okuDaha az göster
Service worker yalnızca HTTPS üzerinde çalışır; bu, PWA'nın vazgeçilmez güvenlik tabanıdır. Oturum bilgisi güvenli çerezlerde tutulur, kişisel veri içeren yanıtlar önbelleğe alınmaz ya da kullanıcı çıkış yaptığında temizlenir. Mağazada ya da sahada ortak kullanılan tabletlerde bu ayrım özellikle önemlidir.
Kullanıcı kitlenizin hangi tarayıcı ve cihazları kullandığına göre bir test listesi çıkarıyoruz. iPhone Safari ile Android Chrome arasındaki davranış farkları, ana ekrana ekleme ve çevrim dışı senaryolar her sürümde ayrı ayrı denenir.
08Çalışma modelleri
Bu hizmette çalışma modelleri
- 01
Proje bazlı
Sabit kapsam, sabit fiyat ve belirli teslim tarihi
Kapsamı belli, teslim tarihi olan işler için.
- Yazılı kapsam ve kabul ölçütleri
- Sabit fiyat ve belirli teslim tarihi
- Teslim ve kabul adımları sözleşmede
- 02
Bakım ve destek
Aylık sözleşmeli, SLA'lı bakım, destek ve geliştirme saati
Yayındaki bir sistemin sürekliliği için.
- Aylık sözleşme ve SLA
- İzleme, güncelleme ve hata düzeltme
- Aylık geliştirme saati
09Sık sorulan sorular
PWA uygulaması hakkında sık sorulan sorular
PWA uygulaması yaptırma fiyatları neye göre değişir?
Ekran sayısı, çevrim dışı çalışması gereken işlemler, bildirim ihtiyacı, mevcut web sitenizin yeniden kullanılıp kullanılamayacağı ve bağlanacak sistemler maliyeti belirler. Var olan bir siteyi PWA'ya dönüştürmek ile sıfırdan geliştirmek farklı kapsamlardır.
Mevcut web sitemizi PWA'ya çevirebilir misiniz?
Site modern bir yapıdaysa manifest, service worker ve önbellek kuralları eklenerek PWA özellikleri kazandırılabilir. Sayfalar çok yavaşsa ya da mobil uyumlu değilse önce bu temel sorunlar çözülür; aksi hâlde ana ekrana eklenen şey yavaş bir site olur.
PWA App Store'da yayınlanabilir mi?
Google Play'e paketlenerek gönderilebilir. App Store ise yalnızca web içeriğini saran ve yerel bir değer katmayan uygulamaları genellikle kabul etmez; App Store'da yer almak önemliyse yerel ya da ortak kod tabanlı bir uygulama düşünmek gerekir.
PWA uygulaması için firma seçerken neyi sormalıyım?
Firmanın iOS'taki kısıtları açıkça anlatıp anlatmadığını, çevrim dışı senaryoyu nasıl test edeceğini ve güncellemelerin kullanıcıya nasıl ulaşacağını sorun. Yalnızca manifest ekleyip işi PWA diye teslim eden bir yaklaşım, sahada beklenen faydayı sağlamaz.
PWA internet olmadan ne ölçüde çalışır?
Önbelleğe alınan ekranlar ve veriler bağlantı yokken görüntülenebilir, formlar sıraya alınabilir. Stok kontrolü ya da ödeme gibi sunucudan anlık veri gerektiren işlemler ise bağlantı gelene kadar bekler.
PWA'yı sonradan yerel uygulamaya dönüştürebilir miyiz?
Arka uç API'si ve iş kuralları doğru ayrıldıysa, sonradan geliştirilecek yerel uygulama aynı sunucuyu kullanır. Arayüz yeniden yazılır ama veri ve iş mantığı korunur; bu yüzden PWA'yı ilk adım olarak planlamak yatırımı boşa çıkarmaz.
10İlgili hizmetler