Mobil Site mi Mobil Uygulama mı? Varsayılan Web
Karar mobil site ile mobil uygulama arasında değil, dağıtım ile yatırım arasında. Web'de yayınladığın şey bir linkle açılır, uygulama önce indirilmeyi bekler. Bu tek fark varsayılanı belirlemeye yeter: web ile başla, uygulamayı ancak onu zorunlu kılan bir gereksinim varsa yaz.
Uygulamanın klasik üstünlükleri artık kısmen web'de
Anlık bildirim uzun süre uygulamanın kozu sayıldı. Artık değil. Web push Chrome ve Firefox tarafında yıllardır çalışıyor, iOS 16.4 ile Safari de ana ekrana eklenmiş web uygulamaları için bildirim gönderebiliyor. Çevrimdışı çalışma service worker ile, kamera ve konum tarayıcı API'leriyle erişilebilir durumda.
Web'in yetişemediği alan dar ve net: arka planda sürekli çalışma, arka plan konum takibi, Bluetooth ve NFC'nin tam kullanımı, ağır grafik işleri, mağaza içi abonelik altyapısı. Bu listede kendi ürününü işaretleyemiyorsan uygulamaya ihtiyacın yok.
Kurulum, kullanıcının ödediği bedel
Uygulama kullanıcıdan peşin bir yatırım ister: mağazaya git, indir, izin ekranlarını geç, hesap aç. Bunu yalnızca ürünü tekrar tekrar kullanacağını bilen kişi öder. Ayda bir girilen bir hizmet için uygulama yazmak, kullanıcıyı ilk temasta kaybetmenin en pahalı yolu.
Tersi de doğru. Günde birkaç kez açılan, oturumu sürekli açık, sadık kullanıcısı olan bir üründe uygulama işi hızlandırır. Ana ekrandaki simge tek başına bir alışkanlık tetikleyicisi ve web bunun tam karşılığını vermiyor.
İki kod tabanının faturası
Maliyet ikiye katlanmaz, ikiden fazlaya çıkar. iOS ve Android ayrı yazılır, ayrı test edilir, ayrı sürüm çıkar. İkisini besleyen bir API katmanı ve genelde bir de web arayüzü kalır ortada. Üstüne işletim sistemi sürümü başına regresyon testi ve mağaza inceleme süresi biner.
Asıl farkı sürüm hızı yaratıyor. Web'de kritik bir düzeltmeyi dakikalar içinde canlıya alırsın. Uygulamada aynı düzeltme önce mağaza incelemesini, sonra kullanıcının güncellemeyi indirmesini bekler, eski sürümde kalanlara aylarca destek verirsin (mağaza kuyruğu beklemek bu işin en sinir bozucu tarafı).
Melez çözümler ne çözer, ne çözmez
React Native, Flutter ya da web görünümü saran çözümler geliştirme maliyetini kısar, bakım maliyetini kısmaz. Tek kod tabanı yazsan bile iki mağaza hesabı, iki imzalama süreci, iki sürüm notu ve birbirinden bağımsız iki çöken cihaz kümesi seni bekliyor. Bu araçlar uygulamaya gerçekten ihtiyacı olan küçük ekipler için mantıklı, ihtiyacı olmayan ürünü uygulamalı yapmak için gerekçe değil.
Karar tablosu yerine tek soru
Kullanıcı bunu haftada kaç kez açacak? Cevap birden azsa web. Her gün açılıyor ve donanıma bağlıysa uygulama. Aradaki geniş bölgede sıralama şu: önce mobil web'i düzgün yap, ölçümü kur, kurulum zahmetine girecek bir kitlenin oluştuğunu gör, sonra uygulamayı yaz. Uygulamayı önce yazıp kitleyi sonra aramak çoğu projede en pahalı sıralama oluyor.