Teknik Detaylar
Aquatick uygulaması:
MVVM mimarisinde uygulama geliştirmede
kullanılan bir desendir ve üç ana bileşenden oluşur: Model, View ve ViewModel. Model, veri ve iş
mantığını temsil eder; View, kullanıcı arayüzünü (UI) ve kullanıcı etkileşimlerini yönetir;
ViewModel ise View ve Model arasında bir köprü görevi görür, UI mantığını içerir ve Model'den gelen
verileri UI için uygun formata dönüştürür. MVVM, veri bağlama (data binding) özelliği sayesinde View
ve ViewModel arasındaki bağlantıyı otomatize eder, böylece kodun daha temiz, daha iyi organize
edilmiş ve daha kolay test edilebilir olmasını sağlar.
Multi Moduler genellikle büyük ve karmaşık yazılım projelerinde kullanılan bir yaklaşımdır ve projeyi daha küçük, yönetilebilir, tekrar kullanılabilir ve bağımsız modüllere ayırır. Bu modüller, özelliklere, işlevselliklere veya katmanlara göre ayrılabilir ve her biri kendi yapılandırma dosyaları, kaynak kodları ve bağımlılıkları ile bağımsız olarak geliştirilebilir. Multi-module yapısı, projenin ölçeklenebilirliğini, bakımını ve test edilebilirliğini artırır ve ekip üyelerinin aynı anda farklı bölümler üzerinde çalışabilmesini sağlar.
Dagger-Hilt Android uygulamaları için
Dagger'ın kolaylaştırılmış bir sürümüdür ve bağımlılık enjeksiyonunu basitleştirmek için
tasarlanmıştır, böylece geliştiriciler daha az boilerplate kodu ile bağımlılık enjeksiyonunu kolayca
uygulayabilirler.
Room Android Jetpack'in bir parçası olan ve
SQLite veritabanı işlemlerini kolaylaştıran bir kalıcılık kütüphanesidir. Room, SQL sorgularını
yazmayı kolaylaştırır ve compile-time kontrolü sağlayarak hataları azaltır.
Coroutines Android'de asenkron
programlamayı kolaylaştırmak için Kotlin coroutines ile entegre bir yaklaşım sunan bir kütüphanedir.
Retrofit Android ve Java uygulamalarında
REST API çağrılarını yönetmek için kullanılan, tip güvenliği sağlayan ve ağ işlemlerini
kolaylaştıran bir HTTP istemci kütüphanesidir.
Coil Kotlin tabanlı, modern ve hafif
bir Android görüntü yükleme kütüphanesidir. Bu kütüphane, Kotlin coroutines kullanarak asenkron ve
performanslı bir şekilde görüntüleri yüklemek için tasarlanmıştır ve Android uygulamalarında görüntü
yükleme işlemlerini kolaylaştırır.
Firebase Firebase, Google tarafından sunulan popüler bir mobil ve web uygulama geliştirme platformudur. Bu platform, uygulama geliştiricilerin ihtiyaç duyduğu birçok hizmeti ve aracı barındırır. Firebase'in sunduğu özellikler arasında veritabanı yönetimi, kullanıcı kimlik doğrulama, analiz, dosya depolama ve bulut mesajlaşma yer alır. Firebase, özellikle gerçek zamanlı veritabanı ve kullanıcı etkileşimlerinin kolayca izlenmesi gibi özellikleriyle tanınır. Geliştiricilere, uygulamalarını daha hızlı ve etkili bir şekilde oluşturmaları ve ölçeklendirmeleri için gerekli araçları sağlar. Ayrıca, Firebase platformu, kullanıcı deneyimini artırmak ve uygulamanın performansını izlemek için çeşitli analiz araçları sunar.
Coil Android için "Coil" (Coil-Image Loader), Kotlin tabanlı modern bir görüntü yükleme kütüphanesidir. Bu kütüphane, Android uygulamalarında resimleri indirme ve gösterme işlemlerini kolaylaştırmak için kullanılır.
Lottie Adobe After Effects'te oluşturulan animasyonları JSON formatına dönüştüren ve bu animasyonları Android, iOS, Web ve React Native gibi çeşitli platformlarda kolayca kullanılabilir hale getiren popüler bir kütüphanedir. Lottie, Airbnb tarafından geliştirilmiştir ve mobil ve web uygulamalarında yüksek kaliteli animasyonlar eklemek için yaygın olarak kullanılır.
Work Manager Android'de WorkManager, zamanlama açısından esnek olan ve uygulama kapatıldığında bile devam edebilen arka plan görevlerini yönetmek için kullanılan bir API'dir. Jetpack bileşenlerinin bir parçası olan WorkManager, işlerin (işlemlerin) zamanlanması ve gerçekleştirilmesi için kullanılır, özellikle de bu işlemler uygulamanın derhal çalıştırılmasını gerektirmeyen ve cihaz yeniden başlatıldığında bile devam etmesi gereken görevlerdir. WorkManager, Android'in eski ve yeni sürümleri arasında tutarlı bir arka plan görev yönetimi sağlar.
Vito Vico, Android için hafif ve genişletilebilir bir grafik kütüphanesidir. Bu kütüphane, Kotlin diliyle yazılmıştır ve grafik ve çizelgeler oluşturmak için kullanılır. Vico'nun özellikleri arasında Jetpack Compose ile entegrasyon ve Android uygulamaları için çeşitli türde grafikler ve çizelgeler oluşturma yeteneği bulunur. Kütüphane, Android geliştiricilerinin görsel verileri etkili bir şekilde sunmalarına olanak tanıyan esnek çözümler sunar. Apache 2.0 lisansı altında yayınlanmıştır. Daha fazla bilgi ve kütüphanenin kullanım detayları için GitHub sayfasını ziyaret edebilirsiniz:
GitHub Sayfası.
Junit Test Java programlama dilinde yazılan uygulamalar için popüler bir birim test çerçevesidir. Geliştiricilere, kodlarının beklenen davranışları gösterip göstermediğini doğrulamak için basit ve etkili bir yol sunar. JUnit, test durumlarını tanımlamak için açıklayıcı (annotation) tabanlı bir yapı kullanır ve otomatik testlerin kolayca yazılmasını ve çalıştırılmasını sağlar, böylece yazılım geliştirme sürecinin kalitesini ve güvenilirliğini artırır.