Android Kütüphaneleri 2 – ButterKnife

Gelelim yazı dizisinin 2. benimde en sevdiğim kütüphaneye :) Şimdi butterKnife Android’in asi çocuğu Jake Wharton tarafından geliştirilmiştir. Onla ilgili bir yazıda yakın zamanda yazmak isterim..

Şimdi ilk olarak ButterKnife Kütüphanemiz bize ne avantaj sağlıyo, niye bu yazı dizisinde bu kütüphaneye yer ayırdım, nedir, nasıl kullanılır gibi sorulara cevap arayacağız ?

Öncelikle ButterKnife Kütüphane nedir ?

ButterKnife bir View Injector kütüphanesidir. Yani bizim uzun uzun tanımladığımız view bileşenler yerine annotation kullanarak bileşenleri projemize dahil etmemize yarayan kütüphane..Bu kütüphane ile sadece view’ler değil, aynı zamanda projemizde kullandığımız String, Drawable, Color ve Dimen gibi kaynakları da aynı yöntemle pratik bir şekilde projemize ekleyip bizi kod tekrarı yapmaktan kurtarıyor.

ButterKnife kütüphanesi nasıl eklenir ? 

Build.gradle’de ki uygun yere ekleyip sync edersek bu iş tamamdır..

ButterKnife kullanmadan önce ve kullandıktan sonra farklar için :

Şimdi öncelikle ButterKnife varkenki halinden bahsedeceğim..

70 satirlik bir işlem olan 2 editText’ten sayilari alıp onları toplayan çıkaran bölen çarpan bir uygulama..

İşte fark burada ortaya çıkıyor. Şimdi ise bunu normal bir buttonlar ile yaptığınızı düşünün. Direk uygulamanın sadece 1 kısmını yazacağım.

İşte kısaca demek istediğime geçeyim.. EditText’tir, Button’dur vs bileşenlerimizi yukarda butterknife ile tek satırda yazdık. button’ların ne boğucu fazlalığını çektik ne de onlarla uğraştık. Tek satır ile @OnClick(R.id.button) void Topla() ile neredeyse 7 satırlık bir işi tek satıra indirmiş olduk. Bunun gibi kısıltlamalar için kullanmanız gereken kütüphane ButterKnife’dır..

 

 

Çalışma mantığını öğrenmek için : https://gelecegiyazanlar.turkcell.com.tr/blog/butterknife-nasil-calisir

Kaynaklar :

https://github.com/JakeWharton/butterknife

http://www.journaldev.com/10439/android-butter-knife-example-tutorial

http://craftedcourses.io/all-about-butter-knife-part-1/

 

Post Author: umiitkose

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">