Flutter Shorebird: Flutter Geliştiricileri İçin Güçlü Bir Araç

 


Herkese merhaba. Bugün size Flutter dünyasından yeni keşfettiğim bir uygulama ile geldim. Malum biz Flutter’cılar mobil uygulama yazıp çeşitli platformlarda yayınlıyoruz ve iş bununla kalmıyor. Sonrasında üzerine çalışmaya devam ediyoruz. Hata düzeltmeleri, geliştirmeler, güncellemeler vs. Yaptığımız değişiklikleri uygulamamızı yüklediğimiz platforma bildiriyoruz, onların onayından geçiyor. Bu noktada biraz beklemek zorunda kalıyoruz. Sonrasında kullanıcıya uygulamanın güncel bir versiyonu olduğuna dair bildirim gidiyor, kullanıcı güncelleme yapıyor. Ancak bundan sonra süreç başa dönüyor. Yeni güncellemeler ve değişiklikler için yine aynı prosedür.

Bu durumun önüne geçmek için bir platform oluşturulmuş. İsmi Shorebird. Ben bugün size bununla ilgili bir yazı hazırladım. Kendi yayınlamış olduğum uygulamamda yaptığım güncelleme tamamlanır tamamlanmaz ben de kullanacağım. Sonuç ile ilgili ayrıca geri bildirim vereceğim. Şimdi gelelim araştırmalarım sonucunda bulduklarıma…

Shorebird nedir?

Shorebird, Flutter projelerine hız katmak ve kullanıcılarınıza sorunsuz bir deneyim sunmak için tasarlanmış bir CI/CD (Continuous Integration/Continuous Deployment) ve dağıtım platformu. Yani daha hızlı güncelleme ve kullanıcılara ulaştırılmayı sağlıyor. Hataları düzeltmek veya yeni özellikler eklemek için uygulamanızı mağazalara tekrar yüklemeniz gerekmiyor. Bu, hem geliştiriciler hem de kullanıcılar için büyük bir kolaylık!

Shorebird’ün Öne Çıkan Özellikleri

  1. Hotfix Desteği:
    Canlıdaki bir hata kullanıcıları etkiliyor diyelim. Shorebird sayesinde bu hatayı hemen düzeltebilir ve kullanıcılarınıza anında ulaştırabilirsiniz. Örneğin, bir ödeme sistemi hatası varsa, mağaza onayı beklemeden düzeltebilirsiniz.
  2. Hızlı Güncelleme Dağıtımı:
    Yeni bir özelliği eklediniz ama kullanıcılarınızın bunu görmesi için güncelleme yapmasını mı bekliyorsunuz? Hayır, gerek yok! Shorebird, güncellemeyi arka planda kullanıcı cihazına taşır.
  3. Flutter’a Özel Optimize Edilmiş:
    Shorebird, Flutter geliştiricileri için özelleştirilmiştir. Bu da hem performans hem de entegrasyon sürecinde size avantaj sağlar.
  4. CI/CD Entegrasyonu:
    Kodlarınızı test eder, derler ve yayınlar. Böylece manuel hataları en aza indirir.
  5. Versiyon Kontrolü ve Raporlama:
    Hangi güncellemenin kaç kullanıcıya ulaştığını ve ne kadar başarılı olduğunu detaylı bir şekilde takip edebilirsiniz.

Shorebird Nasıl Yüklenir ve Kullanılır?

Kurulum

Shorebird’ü kullanmaya başlamak için ilk yapmamız gereken SDK’yı projemize eklemek. Onu da şöyle yapıyoruz:

Terminalden SDK’yı yüklüyoruz:

dart pub global activate shorebird

Shorebird CLI’yi projemize ekliyoruz ve projemizin ana dizininde şu komutu çalıştırıyoruz:

shorebird init

Bu işlem, projemizi Shorebird ile entegre etmeye yarıyor.

Artık projemizde dilediğimiz değişikliği yapabiliriz. Kodlarımızda değişiklik yaptıktan sonra, şu komutla güncellemeyi yüklüyoruz:

shorebird patch

Bu komut, uygulamamızdaki değişiklikleri paketleyip Shorebird sunucularına gönderiyor.

Kullanıcılarımız uygulamayı tekrar yüklemeden bu güncellemelere erişebilir hale geliyorlar.

Aynı şekilde bir hata tespit ettiğimizde de hızlı bir şekilde şu adımları izleyerek süreci tamamlayabiliyoruz:

  • Hatanın olduğu bölgeyi düzeltiyoruz.
  • Yeni bir patch oluşturuyoruz. (shorebird patch komutu ile)
  • Ve güncellemeyi Shorebird üzerinden dağıtmış oluyoruz.

Shorebird’in Kullanım Alanları

Yazdığımız uygulama sürekli güncelleme alır türden bir uygulama değilse, nadiren hata çıkıyorsa Shorebird kullanmaya pek gerek yok gibi. Ama bu platformu en çok nerelerde kullanabiliriz diye düşündüğümde aklıma aşağıdaki uygulama alanları geldi. Sizin de aklınıza gelen başka türden uygulamalar varsa yorumlarda tartışabiliriz.

  • E-Ticaret Uygulamaları:
    Stok bilgisi veya ödeme sistemiyle ilgili bir hata oluştuğunu düşünün. Kullanıcılar mağazada onay beklerken sabırsızlanabilir. Shorebird ile birkaç dakika içinde hatayı düzeltebilir ve güncellemeyi gönderebilirsiniz.
  • Eğitim Uygulamaları:
    Ders içeriklerinde bir değişiklik yapmanız gerektiğinde, kullanıcıların uygulamayı güncellemesini beklemeden yeni içerikleri anında ulaştırabilirsiniz.
  • Oyun Uygulamaları:
    Bir oyun hatası veya dengeleme sorunu varsa, oyuncuların deneyimini bozmak yerine, hızlıca bir düzeltme yayınlayabilirsiniz.

Shorebird’ün Flutter Ekosistemine Katkısı

Flutter, cross-platform geliştirme konusunda zaten güçlü bir framework. Ancak, Shorebird gibi araçlar, Flutter uygulamalarını daha hızlı, daha kolay ve daha kullanıcı dostu hale getiriyor. Kodlama sürecini hızlandırmak, hataları minimize etmek ve kullanıcı memnuniyetini artırmak isteyen geliştiriciler için Shorebird gerçekten harika bir çözüm.

Küçük Bir Not:

Shorebird’ü araştırırken buna benzer Codemagic diye bir platform olduğunu da keşfettim. Ama Codemagic genel bir CI/CD çözümü sunuyormuş, Shorebird ise Flutter’a özel olduğu için onun daha iyi bir deneyim sunacağını ve biz Flutter’cılar için daha kompakt bir çözüm olacağını düşündüm.

Dikkat Edilmesi Gereken Noktalar

Her teknolojide olduğu gibi bu platform da tamamen dikensiz bir gül bahçesi değil. Araştırmalarımda gördüğüm kadarıyla kullanırken dikkat edilmesi gereken ya da tercih edilme noktasında dikkate alınması gereken bazı noktalar var. Kısaca onlardan da bahsedeyim.

Platforma Bağımlılık

İlk söylemek istediğim şey, uygulamamızı Shorebird’e entegre ettiğimiz anda onu bir noktada Shorebird platformuna bağımlı hale getirmiş oluyoruz. Bir sebeple Shorebird hizmetini durdurursa veya destek kesilirse, projeyi başka bir sisteme taşımak ekstra çaba gerektirebilir. Bunu dikkate almakta fayda var.

Kullanıcı Güvenliği ve Güncellemeler

Bir diğer nokta Shorebird ile uygulama güncellemelerini anlık olarak sunabiliyoruz, evet ancak bu durum bazı güvenlik ve kullanıcı deneyimi sorunlarına yol açabilir. Örneğin hızlı güncellemeler gönderirken, yeterince test edilmemiş kodu yayına alıyor olabiliriz, bu canlıda ciddi bir risk demek.

Bunun dışında App Store ve Play Store’un uygulama güncellemelerini manuel inceleme süreçleri, güvenlik açısından bir filtre görevi görüyor. Biz Shorebird ile bu filtreyi bypass etmiş oluyoruz, bu da bir çeşit risk.

Ücretlendirme ve Maliyet

Shorebird şu an beta sürecinde ve ücretsiz ancak gelecekte ücretli bir modele geçebilir. Eğer birden fazla uygulamamızı entegre etmişsek, maliyet hızla artabilir.

Bu gibi durumları iyice irdeleyerek karar vermemiz bizim yararımıza olacaktır. Bu noktada Shorebird’ün hedef kitlesi ile ilgili de özet geçersek daha iyi olur.

Shorebird Kullanmalı Mıyım?

Shorebird’ü kimler kullanmalı?

  • Sürekli güncellemeler ve hotfix’lere ihtiyaç duyan büyük projeler.
  • Hızlı güncelleme yapmak isteyen, ancak CI/CD süreçlerini optimize etmek için araç arayan ekipler.

Shorebird’ü kimler tercih etmeyebilir?

  • Nadir güncelleme yapan veya basit projelere sahip geliştiriciler.
  • Kullanıcı verilerinin ve güvenliğinin ön planda olduğu, sıkı mağaza politikalarına tabi uygulamalar.

Sonuç olarak araştırdığım kadarıyla, yukarıdaki handikap diyebileceğimiz detaylara dikkat ederek karar verdikten sonra, Flutter projelerinde güncelleme sorununu hızlandırmak ve kullanıcılara daha hızlı hizmet sunmak için, Shorebird kesinlikle denenmesi gereken bir araç. Entegrasyonu kolay, kullanımı hızlı ve bize büyük bir esneklik sunuyor. Zamanı daha verimli kullanmak açısından işimizi kolaylaştıracağını düşünüyorum.

Kaynaklar:

Okuduğunuz için teşekkür ederim.

Selin.

Hiç yorum yok: