Kotlin Öğreniyorum

Ruşen Narinç
5 min readAug 25, 2023

--

Herkese Selam Çalışırken Öğreniyorum, Öğrenirken Öğretiyorum serimize Hoşgeldiniz :)

Bu yazı serisinde Kotlin öğrenirken aldığım notları, okuduğum makaleleri izlediğim videolardan öğrendiğim bilgileri yorumlayıp sizinle paylaşıyor olacağım. İyi okumalar.

Kotlin Nedir ?

Adını Kotlin Adasından alan Kotlin 22 Temmuz 2011 de Sank-Peterburg, Rusya merkezli JetBrains şirketi programcıları tarafından geliştirilmiş 2016 yılında ilk sürümü yayınlanmıştır.

Kotlin, Java Sanal Makinesi ( JVM) üzerinde çalışan, ayrıca JavaScript kaynak koduna derlenebilen, statik tipli bir programlama dilidir. Kotlin’in söz dizimi Java koduyla birlikte çalışmak üzere tasarlanmıştır. Javadaki kodları Kotlin’de, Kotlin’deki kodları ise Java’da çalıştırmak mümkündür.

Kotlin açık kaynak ve ücretsiz olarak kullanılabilen bir programlama dilidir.Apache 2.0 lisansı altında geliştirilmiştir. Bu lisans yapısı geliştiricilere özgürce kullanma imkanı sunar.

Kotlin JavaScript kodlarıyla uyumlu çalışabildiğini belirtmiştik ve aynı zamanda Kotlin ,HTML sayfalarında da kullanılabilecek kadar esnek bir yapıya sahiptir. Bu özellikleri, farklı programlarda ve projelerde kullanılabilme kolaylığı ve verimli bir işbirliği sağlar.

Kotlin ve Java arasındaki en belirgin özelliklerinden biri de Kotlin’in kodlama tarzı, Java’ya kıyasla daha sade ve özgündür.Bu özellik geliştiriciler tarafından tercih edilmesinin temel nedenidir. Bu sayede daha az kod yazarak aynı işlevselliği elde etmek mümkün olabilir. Nesne yönelimli ve obje odaklı bir dil olan kotlin, modern programlama prensiplerine uygun olarak tasarlanmıştır. Bu da daha düzenli, okunabilir ve sürdürülebilir kodlar yazmayı hedeflemiştir. Bunun yanında kotlin de diziye ekleme yapabilme özelliği de yukarıda söylediğimiz gibi kodun daha hızlı ve verimli çalışmasını sağlar.

Kotlin Java’ya göre daha güvenilir bir programlama dilidir.Nasıl yani derseniz , şöyle;

Null değerlerle yaşanan sıkıntılar Kotlin sayesinde minimalize edilir. Bu, yazılımların daha sağlam ve hata olasılığı daha düşük bir şekilde geliştirilmesine olanak tanır. Sunucu ve istemci tabanlı web uygulamalarını destekleyen Kotlin , bu alanda geliştirme yapılmasını kolaylaştırır.Bu özellik çok çeşitli uygulama türlerini destekleyerek kullanım alanını genişleştir.

Kotlin ile Android uygulamalarını yapabileceğiniz Android Studıo Kurulumunu anlatan detaylı bir video buraya bırakıyorum.

Android Studıo’yu kurduğumuza göre “Hello Word” dan bahsedelim.

Hello Word ekrana çıktı veren basit bir programdır. Çok basit bir program olduğu için yeni bir programlama dilini tanıtmak ve mantığını anlatmak için kullanılır.

Program çalıştığında çıktı şöyle olacaktır;

Peki bu program nasıl çalıştı?

İlk başta, yorumlar olarak işaretlenen “//” ile başlayan satırlar yorum satırıdır bu bir kod değildir. Bu yüzden derleyici tarafından görmezden gelinir. fun main() { … } bloğu, main adında bir fonksiyonu bildirir. Bu fonksiyon, her Kotlin programının başlangıç noktasıdır diyebiliriz. Kotlin derleyicisi, kod yürütümüne bu main fonksiyonu ile başlar.

println(“Merhaba Dünya”) bloğu, println adlı bir fonksiyonu yazdırır. Bu fonksiyon, içine verilen mesajı alır ve bu mesajı tırnak işaretleri içindeki metin olarak standart çıktı akışına yazar. Bu örnekte, “Merhaba Dünya ” metni yazdırılır ve bir sonraki satıra geçilir.

Burada ise package yapısıdan bahsedeceğim.

Kotlin, projelerinizi düzenli bir şekilde organize etmek için paketler kullanmanıza olanak sağlar. Paketler, kodunuzu mantıklı bir şekilde gruplamak, farklı modülleri ayrı ayrı yönetmek ve kodunuzun okunabilirliğini artırmak için kullanılır.Projeye özgü ihtiyaçlara en iyi şekilde uyan ve ekibinizin tercihlerine göre bir paket yapısı oluşturmak önemlidir.

Bir Kotlin dosyasının en üstündeki package ifadesi ile başlayarak bir paket belirtirsiniz. Örneği yukarıdaki gibidir. package com.info.merhabadunya ifadesi ile kodunuzu bu paket içerisinde tutmuş olursunuz.Bu yapı, projenizin genel yapısına ve ihtiyaçlarına bağlı olarak değişebilir.

Kotlin’ de import özelliği:

Kotlin dilinde, package ifadesi ile belirlediğiniz paketin hemen altında import ifadelerini kullanarak farklı paketlerde tanımlanan sınıf, fonksiyon ve diğer bileşenleri içe aktarabilirsiniz. Örneğin aynı dizinde olan classlara import kullanmadan ulaşabilirken farklı dizindeki classları kullanabilmek için onları import etmek gerekir.

Değişkenler (Veriables)

Değişkenler, program içerisindeki verilerle etkileşimde bulunmamızı sağlayan sembolik ifadelerdir. Bu değişkenlerin adlandırılması, kodun anlaşılabilirliği ve sürdürülebilirliği için son derece önemlidir. Aşağıda değişken adlandırma kurallarını bulabilirsiniz:

*** Değişken isimleri, sayı ile başlayamaz. İlk karakter bir harf (A-Z, a-z) veya alt çizgi (_) olmalıdır. Ancak, değişken adlarının ilk karakterinden sonra sayı kullanmak mümkündür.

***Değişken adları sadece harfler, sayılar ve (_) içerebilir ve ya (_) ile başlayabilir . Özel karakterler (örneğin !, @, #, $, % vb.) değişken adlarında kullanılamaz.

*** Değişken adlarında Türkçe karakterler (ç, Ç, İ, ş, Ş, ü, Ü, ö, Ö, ğ, Ğ) kullanılmamalıdır. Bu tür karakterler, farklı platformlarda sorunlara yol açabilir ve uluslararası programlama standartlarına uymaz.

*** Değişken adları içerisinde boşluk kullanmak yerine kelime aralarını alt çizgi (_) veya büyük harf kullanarak ayırmak tercih edilir.

Dip Not : Değişken ismi tanımlarken birkaç kelimeden bir araya gelmiş olan değişkenin ilk kelimesinin ilk harfi hariç diğer her kelimenin ilk harfinin büyük olmasıdır. İsmini devenin hörgücünden almıştır. Örneğin “camKirigi”, “lokmanHekim”.

Bu kurallara uygun olarak adlandırılmış değişkenler, kodun daha anlaşılır ve kullanımının daha kolay olmasını sağlar. Aynı zamanda programlama topluluğundaki genel standartlara uyum sağladığınızdan emin olursunuz.

Kotlin Öğreniyorum serisinin ilk yazısını burada sonlandırmak istedim. Serinin sonraki yazılarında görüşmek üzere. Umarım yazdıklarım size faydalı olmuştur. İyi okumalar :)

Kaynak:

Videolu eğitimler : Udemy/KasımAdalan

Videolu eğitimler : Udemy/AtılSamancıoğlu

--

--