22 Temmuz 2014 Salı

Android İçin Dependency Injection Çözümü: Dagger


Selam,

Yazılım pattern'leriyle ilgileniyorsanız mutlaka duymuşsunuzdur dependency injection kavramını. Özünde bu desenin amacı; yazılım birimlerinin birbiriyle gevşek bağlı(loosely coopled) olmasını sağlamaktır ki bu sayede birimlerin birinde meydana gelen değişim diğer birim(ler)in de değiştirilmesini gerektirmez ve değişime daha açık bir yapı kurgulamış olursunuz. (bkz. SOLID Open-Closed ve Inversion of Control)

17 Temmuz 2014 Perşembe

Android Eventbus(Otto) Kullanımı


Geliştirme yaparken yazdığınız sınıfların bağımlılıklarının düşük olması önemli bir kriter, bu sayede kurduğunuz yapı kolay genişletilebilir, test edilebilir ve yeniden kullanımı kolay bir hal alır. Sınıflar arasında  bağımlık genelde interface'ler kullanılarak düşük tutulur. Ancak bu yaklaşımın olumsuz yanı callback'ler vs.'den kaynaklanan boilerplate code. Fakat biz publisher-subscriber(observer) mekanizmasını kullanarak hem gevşek bağlı(loose coupling) birimler oluşturup hem de boilerplate code problemini kotarabiliriz. Bu noktada piyasadaki eventbus kütüphanelerinden faydalanabilirz.

11 Temmuz 2014 Cuma

Android DatePickerDialog'daki DayPicker'i Gizleme


Merhabalar,

Android'de ekranda fazla yer kaplamadan kullanıcıdan tarih bilgisi almanın yolu, içerisinde tarih seçicisi bulunduran DatePickerDialog'dan geçer. Bu dialog tipi içerisinde DatePicker komponentini barındırarak gün, ay ve yıl spinner'larıyla tarih seçme işlemini kolaylaştırır.