← Teknoloji Radarı

Kodlama

Shopify React Native'i bırakıyor: Yapay zekâ 'iki kez yazmak' hesabını değiştirdi

Beş yıldır React Native'in en büyük destekçilerinden olan Shopify, mobil uygulamalarını yeniden Swift ve Kotlin ile yazıyor. Gerekçe: Kodlama ajanları, aynı özelliği iki platform için ayrı yazmayı artık ucuzlattı.

Bu neden önemli?

Tek kod tabanıyla hem iPhone hem Android uygulaması yazmak yıllarca 'maliyeti yarıya indir' vaadiyle öne çıktı. Yapay zekâ bu maliyeti değiştirirse, mobil geliştirmede hangi aracın seçileceği de değişebilir.

React-Native Is Dead... Thanks to AI. · Better Stack, YouTube (İngilizce). Tıklayınca video yüklenir.

Önce biraz geçmiş

Bir mobil uygulamayı hem iPhone hem Android için yapmak istiyorsan klasik yol, iki ayrı uygulama yazmak: iPhone için Swift, Android için Kotlin. Bunlara “native” (yerel) uygulama denir. Sorun, aynı özelliği iki kez yazmak, iki kez test etmek ve iki ekip beslemek.

React Native, Meta’nın bu soruna cevabı. JavaScript ve React ile bir kez yazıyorsun, uygulama iki platformda da çalışıyor. Shopify 2020’de bütün yeni mobil uygulamalarını bu teknolojiyle yazma kararı aldı ve React Native dünyasının en büyük destekçilerinden biri oldu.

Ne değişti?

Shopify’ın 10 Eylül’de yayınladığı yazıya göre şirket artık büyük mobil uygulamalarını tekrar Swift ve Kotlin ile yazıyor. Gerekçe açık: Kodlama modelleri o kadar iyileşti ki, aynı özelliği iki dilde yazmanın maliyeti eskisi gibi değil.

Mantık şöyle işliyor:

  • Bir özelliği bir platformda yazıyorsun.
  • Bir yapay zekâ ajanı, onu örnek alarak diğer platform için yazıyor.
  • Ajanlar, geliştiricinin iyi bilmediği platformda da hızla iş çıkarmasına yardım ediyor.

Karşılığında native uygulamanın avantajlarını alıyorsun: telefonun bütün özelliklerine doğrudan erişim, Apple ve Google’ın kendi araçları ve arada daha az katman.

“Yapay zekâ çöpü” nasıl önlenir?

Bu kadar kodu ajanlara yazdırmanın riski belli: Çalışıyor gibi görünen ama özensiz kod. Shopify bunun için Helix adını verdiği bir geçiş sistemi kurmuş. Her adımda bir kontrol noktası var ve bir sonrakine geçmek için şunlar gerekiyor:

  • Testlerin geçtiğine dair kanıt,
  • Çalışan uygulamayla görsel karşılaştırma,
  • Kodu “hata bulmak için” inceleyen ayrı bir inceleme,
  • Ve son olarak bir insanın onayı.

Ajanlar için hızlı test

Native uygulamaları test etmenin bir sorunu var: Simülatörü açmak, uygulamayı derleyip çalıştırmak dakikalar sürüyor. Bir ajan için bu çok yavaş. Shopify iş mantığını arayüzden ayırıp masaüstünde bir komut satırı aracıyla çalışabilir hâle getirmiş. Böylece ajan, arayüze hiç dokunmadan değişikliklerini milisaniyeler içinde deneyebiliyor.

Sonuçlar ve açık kaynak projeler

  • Shop uygulaması, Shopify’a göre 12 haftada baştan native olarak yazıldı ve yayında.
  • 300’den fazla ekranı olan ana Shopify uygulamasının geçişi sürüyor.

Shopify’ın yıllar içinde yazdığı React Native kütüphaneleri de etkileniyor. Haftada yaklaşık 2 milyon kez indirilen liste bileşeni FlashList için şirket kritik düzeltmeleri sürdürüyor ama uzun vadeli yeni bir sahip arıyor. React Native Skia yıl sonuna kadar destekleniyor, sonra yeni bir adla yoluna devam edecek. Restyle ise arşivlendi.

React Native öldü mü?

Videonun başlığı iddialı. Ama gerçek daha karmaşık. Shopify’ın büyük bir ekibi ve güçlü bir test altyapısı var. Küçük bir ekip için tek kod tabanı hâlâ ciddi bir kolaylık. Asıl ders şu: Yapay zekâ, “hangi teknolojiyi seçelim?” sorusundaki eski hesapları yeniden yapmayı gerektiriyor. Ve bu hesapta en değerli şey, ajanın işini kontrol edebileceğin iyi testler.

Düşün

  • Kod yazmak ucuzladıysa, bir yazılım projesinde artık en pahalı şey ne?
  • Bir yapay zekânın yazdığı kodu bir insan onaylamadan yayına almak sence hangi durumlarda kabul edilebilir?