Kotlin

Beyzanur Okudan
Turk Telekom Bulut Teknolojileri
4 min readDec 16, 2022

Bir önceki yazımda Kotlin nedir ve Java arasındaki farkı hakkında bilgilendirme yaptım. Bu yazımda Kotlin’in biraz daha derinine ineceğiz. Okullarda da bir adım önde olan Kotlin belki de kurtarıcı niteliğinde adlandırılabilir. Peki Kotlin’de biz istediğimiz projeyi yazabilir miyiz? Cevap tabii ki “denemeden bilemeyiz”.

Bugünkü yazımda Kotlin ile xml ilişkisini inceleyeceğiz. Bir önceki karakter hesabı yaptığımız proje üzerinden örnek göstererek ilerleyeceğim. Peki xml nedir? xml, genişletilebilir işaretleme dili anlamına gelmektedir. Hem insanlar hem de bilgisayar sistemleri tarafından kolayca okunabilen belgeler oluşturmak için kullanılan bir işaretleme dilidir. Proje oluştururken herkesin dikkatini çeken aynı zamanda tasarımları da gerçekleştirdiğimiz xml kısmı “Layout” kısmının içinde bulunmaktadır. Peki biz düzenlemeleri sürükle bırak ile yapabiliriz neden xml gibi bir dosyaya ihtiyacımız var?

xml içeriği

xml dosyasını girdiğimizde sağ köşede böyle üç simge ile karşılaşacağız. Design kısmı hepimizin bildiği tasarımları gerçekleştirdiğimiz kısım.

Design

Code kısmı ise düzenlemeleri kod satırları yardımıyla yazılımcının istekleri doğrultusunda en sağlıklı sonuçları alabilen design içerir. Genel olarak “Split” kısmının kullanılması önerilmektedir. Sebebi ise tasarımı kodlar yardımıyla yaparken aynı zamanda proje üzerindeki tasarımı rahatça gözlem yapabilmektir.

Split

xml dosyasının ne anlama geldiğini ve nasıl kullanmamız gerektiğini öğrendik. Ama xml dosyasında bulunan kodlar ne anlama geliyor ve neye göre bir tasarım oluşturuyoruz? Bunun için öncelikle bazı terimleri bilmemiz gerekiyor. Ben bir önceki projemde button, imageview, textview, edittext kullandım. Sırayla hepsinde ne yaptığımı ve anlama geldiklerini anlatmak istiyorum.

Proje

Öncelikle projeyi paylaşmak istedim görselle anlatım daha kolay olacaktır. Button kısmından başlayacak olursak; “Hesapla” yapabilmek için bir button ekledim. Kullanıcı butona tıkladığında yapılmasını istediğimiz işlemi gerçekleştirmek görevinde bulunmaktadır.

Button xml içeriği

id, herkesin bildiğiniz düşündüğüm aynı zamanda butonun kimliği olan anahtar sözcüktür. Butonun anahtar sözcüğü “hesapla” olarak girilmiştir. Width-Height ise boyutları ayarlamamıza yardımcı olmaktadır. Width, genişlik; Height, yükseklik anlamına gelmektedirler. Temel ingilizce düzeyi ile kod yazılması basite indirgenecektir. Boyutların yanında bulunan metodlar ise alanın nası olacağını belirlemektedir.

wrap_content : bulunduğu alan içerisinde yer alan metin, resim veya bileşen kadar yer kaplar.

match_parent : bulunduğu alan içerisinde yatay veya dikey olarak yer aldığı alanı kaplar.

Width-Height

Margin, kenar anlamına gelmekte olup kenarların başlacağı yeri ve boşlukları ayarlanmıştır (start ve bottom ile). Onclick metodu, butona bastığımız esnasında butonda olacak durumu sergilemektedir yani hesaplama işlemini devreye sok demiş olduk. Text kısmında buton yazısını seçtik.

id/cumle olarak verilen sonuçta ise, butona tıkladık ve hesaplama yapmasını istedik buton bu işlemi gerçekleştirdi peki ya sonra ne yapacak elbette ekrana bir çıktı vermesi gerekli bu çıktıyı cumle değişkenine atamasını istemiş olduk. Geriye kalan iki metod ise yerleşimi temsil etmektedir.

ImageView

ImageView kısmında iki fark görülüyor. Bunlardan birincisi width ve height kısımlarına aynı zamanda dp değerleri de vererek kendimiz bir düzen oluşturabiliyoruz.

dp (density pixels): Farklı ekranlarda aynı oranları yakalayabilmek için tasarlanmıştır. Önerilen parmak genişliği ise 50 dp’dir.

Diğer farklılık ise “srcCompat” ‘dır. Bu kısımda da kullanacağımız görüntünün adresini göstermektedir.

TextView

textSize, yazı boyutunu vermektedir ve sp olarak girilmiştir.

sp (scale pixels): Ölçekten bağımsız piksel yani cihaz ekran boyutu değişse de sabit kalan boyutlandırma birimidir. Genellikle font boyutu tercihinde kullanılır. Ekran boyutu artıkça kullanıcılar daha fazla yazı okumak isterler.

EditText

Teker teker bütün xml dosyanın içeriklerini inceledik. Büyük projelerde karmaşıklık artmaktadır. Kullanılacakbileşen sayısı artış göstermektedir ve düzen de bunlar baz alınarak oluşturulmaktadır.

Bir önceki yazımı okumak için;

ziyaret ediniz.

Bir sonraki yazıda görüşmek üzere…

--

--