E-Bülten’e kayıt olun

E-Posta:



Bir Mobil Projenin Yeniden Doğuşu

mobill spor uygulaması

Bir Mobil Projenin Yeniden Doğuşu

Merhaba, bugün sizlere bir mobil spor uygulaması nasıl yeniden canlandırılır, ondan bahsedeceğim.

Şirkete ilk katıldığımda, -ismi lazım değil- bu proje, benim sorumluluğuma verildi. Bu proje, uzun süredir devam eden ve ara verilen bir girişimdi. Üzerinde yaklaşık 3 yıl önce çalışılmış, araya pandemi girdiği için proje müşteri tarafından durdurulmuştu. Aradan geçen 3 yıl içersinde uygulamada kullanılan React Native sürümü ve bağımlılıklar güncelliğini tamamen yitirmişti!

 

Mevcut durumun analizi ve ilk adımlar

Projeyle ilk tanıştığımda, uygulama çalışır durumda değildi ve build sırasında hatalarla karşılaşıyorduk. Geçmişte projede yer almış, şimdiyse kardeş şirketimiz Ecommercio‘da çalışan Anıl Berke‘den destek alarak, kullanılan React Native sürümünün “acilen” güncellenmesi gerektiğini anladım. React Native’in 0.70 sürümünden sonra mimarisinin değişmiş olması, mevcut projeyi güncellemeyi zorlaştırıyordu. Bu sorunu çözmek için, yeni bir React Native projesi başlattım ve eski projedeki tüm ögeleri yeni projeye taşıdım. Daha sonra npx npm-check-updates -u komutu ile bağımlılıkları güncelledim.

 

Çalışmayan bağımlılıkların güncellenmesi

Projenin en önemli özelliklerinden biri, Trainer ve Customer arasındaki görüntülü konuşmayı sağlayan Jitsi bağımlılığıydı ancak bu bağımlılık da çok eskimişti. Yapılan araştırmalar sonucunda, Jitsi’nin yeni bir React Native SDK geliştirdiğini keşfettim ve bunu projeye entegre ettim. Yapılan testler, Jitsi’nin sorunsuz çalıştığını gösterdi. Arada, güncellenmesi gereken önemli bağımlılıklardan biri olan Zustand’ı da yeniledik.

 

Mobil spor uygulamasına yeni özelliklerin eklenmesi

Projeye yeni işlevler eklemek de gündemimizdeydi. Mobil uygulamaya dükkan (e-ticaret) bölümü eklendi ve ödeme entegrasyonu tarafında iyzico SDK entegre edildi. Projedeki tüm listeler, FlashList ile değiştirildi; bu da, React Native’in core componenti olan FlatList’e kıyasla önemli bir performans artışı sağladı.

GitLab üzerindeki görev ve işlerin sayısına baktığımızda, uygulamada bugüne dek irili ufaklı 130 kadar hata düzeltmesi ve iyileştirme yaptığımızı görüyorum.

 

Sonuç: Projeyi yeniden canlandırmak

Sonuç olarak, bu mobil spor uygulaması üzerindeki çalışmalarım sayesinde projeyi başarıyla canlandırdık. Eski sürümlerden kurtularak, en yeni React Native teknolojilerine geçiş yaptık. Jitsi ve Zustand gibi önemli bağımlılıkları güncelleyerek, projeyi daha stabil hale getirdik. E-ticaret bölümü ve iyzico SDK entegrasyonu gibi yeni özelliklerle uygulamanın işlevselliğini artırdık. Bu süreç, hem zorlayıcı hem de öğreticiydi ve projeyi bu noktaya getirmek için gösterdiğimiz çaba, projenin yeniden hayat bulmasını sağladı. Çok yakında yayına girmesini umduğumuz bu proje artık daha güçlü, daha stabil ve kullanıcılarına daha zengin bir deneyim sunuyor.

Mertcan Karaman

İsmi lazım değil, eski bir çalışanımız "Bu çocuğu kaçırmayın!" dedi ve Mertcan'ı hemen ekibe kattık. Kendisini direk derin denizlere attık, en zorlu projeyi ona teslim ettik. Başaracağına inancımız tam...

Yorum Yok

Yorum Yaz

Yorum
İsim
E-Posta
Website