Android Paging 3

Bir Android projesinde RecyclerView ile listeleme işlemini yapabiliriz. Küçük boyutlu listeler gösterebildiğimiz gibi liste elemanlarının fazla olduğu listeleri de RecyclerView üzerinde gösterebiliriz. Büyük boyutlu liste elemanlarının hepsini aynı anda göstermek…

Android: Dagger-Hilt ile Dependency Injection

Dependency Injection(DI), programlamada yaygın olarak kullanılan ve bir sınıfın bağlı olduğu nesnelerin bağımlılıklarının sağlandığı bir design patterndir ve Android uygulama geliştirmede sıklıkla kullanılır. DI ilkelerini takip ederek test edilebilir, okunabilir,…

Android Canvas API

Android uygulama geliştirirken bazen var olan widgetlar (Button, Edittext, TextView vs) yeterli gelmeyebilir. Bu durumda kendimiz ihtiyaçlarımız dahilinde custom viewlerimizi oluşturmamız gerekiyor. Bu yazı genelinde custom view oluşturmak için kullanılan…

Android ViewBinding

ViewBinding, viewlerle etkileşim sağlayabileceğimiz ve XML layout binding işlemlerini daha kolay yapabilmemizi sağlayan ve Android Studio 3.6 ile birlikte gelen bir özelliktir. Bu özellik aktif edildiğinde her bir XML layout…

Android Context’i Anlamak

Context, Android uygulama geliştirmenin önemli yapı taşları arasında yer almaktadır. Context ile uygulamanın bağlamı ve diğer componentlerle iletişimi sağlanabilir. Android’de kullanılan birden fazla Context vardır. Bu yapının nasıl kullanıldığı ve…

Dagger2: Qualifier ve Named Annotation

Bu yazıda Android’de dependency injection için kullandığımız Dagger2′ de yer alan @Qualifier ve @Named annotationlarından bahsedeceğim. Neden @Named annotation ihtiyaç duyarız? Dagger2’de kullanılmak istenen nesne @Provides annotation ile provide edilip…

Kotlin Standart Functions: let, run, apply, also, with

Kotlin’de bazı işlerimizi kolaylaştırabilecek bir takım fonksiyonlar vardır. Bunlar standart functions olarak geçer. Bu yazıda bu fonksiyonları incelemeye çalışacağız. Öncelikle her fonksiyon için ortak olarak kullanılan 3 kavramdan bahsedelim. Bu…

Kotlin: Sealed Class

Sealed class yapısı Kotlin’de olup Java’da olmayan ve Java’daki enum class yapısının bir üst modeli diyebileceğimiz bir yapıya sahiptir. Öncelikle enum class yapısını hatırlayalım. Örneğin sunucudan verileri alıyoruz ve bu…

Android Jetpack Nedir?

Android Jetpack, daha iyi Android uygulamalar geliştirebilmek için bazı component ve araçların bir bütünüdür. Jetpack, Android Support Library ve Architecture Componentleri bir araya getirerek 4 başlık altında toplar. Bunlar; Architecture…

Android’de Tasarım Desenleri: Builder

Design patternler yazılım geliştirme süreçlerinde kodun tekrar kullanılabilirliği, okunabilirliği ve geliştirme sürecini hızlandırması açısından oldukça önemli bir yere sahiptirler. Normalde yazılım dilinden ya da platformundan bağımsız olsalar da ben design…