Teklif al

Native mi cross-platform mı: kararı belirleyen beş soru

Hangi yolun doğru olduğu projeye göre değişir. Uygulamanın cihazın neresine değdiğini, ekibin ne taşıyabildiğini ve bakım yükünün kime kaldığını yazmadan teknoloji adı seçmek erken.

Muhammet Mustafa Dincer5 dk okuma

İkisinden birini baştan seçmek, henüz sorulmamış soruları kapatmak demek. Aynı uygulama hem platformun kendi arayüz katmanında hem tek bir ortak kod tabanında yürüyebilir. Fark, işin nereye değdiğinde ortaya çıkıyor.

Sıra da genelde ters kuruluyor. Mobil uygulama projesinde önce uygulamanın ne yapacağı yazılır, sonra nerede yazılacağına karar verilir.

Beş soru

  1. Uygulama kameraya, sensöre, arka plan işine ya da mağazanın kendi API'lerine ne kadar yakın duruyor?
  2. Aynı davranışı iOS ve Android'de ayrı ayrı sürdürmek ekibin günlük işi olacak mı?
  3. İlk sürümdeki hangi ekranlar iki platformda gerçekten aynı görünmek zorunda?
  4. Tasarım platformun kendi kalıplarına mı yaslanıyor, tek bir görsel sisteme mi?
  5. Bakım, yayın ve hata kaydı kimin masasında toplanacak?

Bir tanesine bile "bilmiyoruz" diyorsanız cevap teknoloji adı değil, kapsamı bir tur daha kesmek. iOS ve Android uygulaması ile cross-platform uygulama aynı brief üzerinden konuşulur.

İşin cihaza değdiği yer

Sürekli arka planda çalışan bir saha aracı düşünün. Konum topluyor, pil yönetimine takılıyor, izin ekranlarıyla boğuşuyor. Burada platformun kendi diline yakın durmak arada bir çeviri katmanı azaltıyor.

Katalog, randevu, hesap ve bildirim listesi ekranları ise iki mağazada neredeyse aynı. Bu tarafta ortak kod, iki ayrı ekip kurmadan ilerlemenin en ucuz yolu.

Ortak kodun sessiz maliyeti

"Bir kez yazar, iki yerde çalıştırırız" cümlesi kameraya, ödemeye, bildirime ve mağaza içi satın almaya gelince duruyor. O noktalar yine platforma değecek. Baştan listedeyse sıradan bir iş kalemi; listede değilse proje ortasında ikinci bir mimari çıkmış gibi hissettiriyor.

Ekibin bildiği yığın da bir kısıt. Elinizde tek yığın varsa ikincisini sıfırdan kurmayı doğru mimari diye anlatmak zor. Söylenmesi gereken şey, işin hangi parçasının o yığına rahat sığdığı.

Faturayı bakım kesiyor

İki native uygulamada her değişiklik iki kez planlanıyor, iki kez test ediliyor, iki kez gönderiliyor. Ortak kodda tek gönderim var, ama platforma değen her yama yine iki cihaz ailesinde doğrulanıyor. Yük ortadan kalkmıyor, sadece yeri değişiyor. Kimin taşıyacağını bilmiyorsanız karar henüz olgunlaşmamış.

Mağaza bu kararı vermiyor

Apple'ın inceleme yönergesi ve Google Play politikası iki yol için de aynı şekilde geçerli. Ortak kod reddi engellemiyor, native kod onayı hızlandırmıyor. Gönderim günü okunacak metin seçtiğiniz teknolojiye göre değişmiyor.

Beş sorunun cevabı yazılıysa karar çoğu zaman kendini söylüyor. Cevap yoksa hangi tarafı seçerseniz seçin ilk sürüm yanlış temele oturuyor.

Sık sorulan sorular

Native her zaman daha mı hızlıdır?

Değişir. Hız, ölçtüğünüz işe ve uygulamanın cihaza ne kadar değdiğine bağlı. Ortak kod tabanı da doğru sınırda rahat çalışıyor. Ölçülmemiş bir hız iddiası tek başına seçim gerekçesi olmuyor.

İki mağazaya da çıkacaksak ortak kod şart mı?

Şart değil. İki mağaza için iki ayrı native uygulama da tutulabiliyor. Ortak kod, aynı davranışı iki yerde sürdürme maliyetini gerçekten düşürüyorsa anlam kazanıyor.

Mağaza kuralları bu kararı kilitler mi?

Kurallar zaman içinde değişiyor. O yüzden gönderim günü Apple inceleme yönergesini ve Google Play politikasını açıp okumak gerekiyor; aylar önce alınmış bir ekran görüntüsü kalıcı kural gibi kullanılmaz.

Teklif için hazır brief şart değil.

Öncelikli hizmeti seçin veya emin değilseniz formu öyle bırakın. Formdan yazın veya doğrudan arayın.