Bir Android Geliştiricinin Vue.js, Quasar ile Tanışması

Photo by Danka & Peter on Unsplash
Herkese merhaba! :) Tam 8 senedir native Android geliştiriyorum. Meslek hayatımın ilk 2 yılında Java, sonrasındaysa Kotlin diliyle geliştirme yaptım.
Hayatımın Uygulaması
2021 yılında ING Türkiye ile yola çıktığımız dönüşüm projesinde, sıfırdan bir bankacılık mobil uygulaması yazdık; bu aşamada, başladığımız tarihte Android’de çıkmış en yeni teknolojileri kullandık:
Dependency Injection aracı olarak Hilt,
Stateflow, Two-way binding içeren sağlam bir MVVM,
Bankacılık alanları bazında(hesaplar, para transferleri, kartlar…) modüllere ayrılmış Clean Architecture kullanımıyla temiz bir kod,
Tekli activity çoklu fragment yapısıyla daha iyi bir performans ve navigation kolaylığı,
Mockkito testleri içermeyen PR geçirmeyecek kadar titiz bir kod inceleme süreci…

3–4 Android developer ile başlanan proje; kendini iyi yetiştirmiş, yeniliklere açık ve birikimli 20 Android geliştiriciyle, 2023'te uygulama mağazalarında yerini aldı(Google Play Store). Verimli, yapıcı kod inceleme yorumları; egosuz ekibimizde hem kodun daha iyi olmasını hem de kendimizi daha iyi geliştirmemizi sağladı.
Projenin pek çok yerinde kullanılan hesap seçme bileşenini, hesaplarım listesini; IBAN’a, hesaplarım arası, cep telefonuna para transferi, hesap hareketleri (hayatımın en zorlayıcı günlerini yaşattı sağ olsun) ve vadeli hesap açma ekranlarını bizzat geliştirdim.
Android’den Nasıl Sıkılabildim
ING’den sonra, yine 4 kişilik iyi bir ekiple büyük çaplı bir mobil cüzdan projesine girişmiş olmama rağmen hep aynı CRUD işini yapıyormuşum gibi gelmeye başladı. Zorluklarla mücadele etmeyi seven ruhum; ING’de yazdığımız, kendine güvenen bu taş gibi işten sonra, Android tarafında sıkılarak kabına sığamaz bir hale geldi.
Photo by Matthew Henry on Unsplash
Daha büyük bir proje göremeyeceğimi, görsem de sıfırdan başlayacak ekipte bulunmamın pek mümkün olmadığını düşünmeye başladım. E “.Net” geçmişim de olduğu için Unity çalışmak mantıklı geldi, çok sevdim; bir spaceshooter geliştirdim ama Unity’de sadece konfor alanımdan çıkarak aşamayacağım başka türden zorluklarla karşılaştım. Bilenler bilir, Unity’nin de çıldırmasıyla ondan da soğudum. Yükselen yıldız “Godot Engine” ise henüz radarıma takılmadı.
Sıradaki Gelsin !
Lebib Yalkın’daki “yazılım takım liderliği” ilanını görmemle birlikte, yepyeni bir zorluk deneyimi yaşama düşüncesiyle gözlerim parladı. Görüşmeler olumlu geçti. Native Android geliştirmeyle Kotlin’in askeri olan ve cross platform geliştirme kütüphanelerine ön yargılı olan bünyem Quasar ile tanıştı! İlk başta sanki uzaylılarla tanışıyormuşum gibi hissetsem de hızla alıştım.
Quasar, çoklu platform desteği konusunda beni zengin etti. Artık aynı kodla hem web uygulamaları hem de mobil uygulamalar yapabiliyor, kendimi bir süper kahraman gibi hissediyorum! Bu teknolojinin “Vue.js” tabanlı olması da ayrı bir hikâye. Bu çocuk, kod yazmayı eğlenceli hâle getiriyor: Anlaşılır bir syntax ile çalışırken performansı da ihmal etmiyor. Vue.js’in geniş topluluğu sayesinde, sanki kahve molasında bir arkadaşa soru sormuş gibi hemen çözüm bulabiliyorsun.
Photo by Luca Upper on Unsplash
Quasar’ın, Google Material Design ögelerine benzeyen tasarım öğeleri ve hazır bileşenleri var ya, beni bildiğim sularda yüzdüğüme iyice ikna etti. Görsel şölen yaratmak çok kolay, sanki bir sanat eseri yapıyormuşum gibi. Tabii ki bazı sıkıntılar da yok değil. Mesela, bazen belirli platform özelliklerinde biraz sıkıntı yaşayabiliyorsun ama bu da işin doğası; her teknolojinin biraz kaprisi de olmalı canııım!
Quasar ile geçen birkaç haftada bir uygulama bile yazdım. Klasik movie veritabanı apilerine bağlanan, film listeleyen bir uygulama. Bir sonraki yazıda bu teknolojiyi teknik detayları ve Android ile benzerlikleriyle ayrıntılı olarak inceleyeceğim.
Sonuç olarak, Quasar Framework ile kod yazmak bana yeni ufuklar açtı. Hem hızlı hem de eğlenceli bir şekilde projeler üretebiliyorum. Önyargılarınızın kölesi olmayın sevgili Nativeciler. Eğer henüz tanışmadıysanız Quasar ile buluşma vaktiniz gelmiş demektir!
Sıkça Sorulan Sorular
▸Quasar Framework nedir ve Android geliştiricilerine ne fayda sağlar?
Quasar, Vue.js tabanlı bir cross-platform geliştirme framework'üdür. Aynı kodla hem web uygulaması hem de mobil uygulama üretilmesini sağlar. Google Material Design'a benzer hazır bileşenleri, Android'e aşina olan geliştiricilere tanıdık bir deneyim sunar.
▸Native Android geliştiricisi neden cross-platform teknolojiye geçmeyi düşünmeli?
Yazar, büyük ölçekli projelerde bile benzer CRUD işlerini tekrar ettiğini fark edince sıkıldığını belirtiyor. Cross-platform geçiş, hem farklı platformlara hitap etme hem de yeni teknoloji öğrenme açısından geliştiriciye yeni ufuklar açıyor. Önyargıları bırakmak, kariyer gelişimi için önemli bir adım olarak öne çıkıyor.
▸Vue.js öğrenmek zor mu, başlangıç seviyesi için uygun mu?
Yazara göre Vue.js, anlaşılır syntax yapısıyla kod yazmayı eğlenceli hale getiriyor ve performanstan ödün vermiyor. Geniş topluluğu sayesinde sorunlara hızlıca çözüm bulmak kolaylaşıyor. Yazar, Quasar ile birkaç hafta içinde çalışan bir film listeleme uygulaması geliştirebildiğini aktarıyor.



