Herkese Selamlar,
mobilhanem.com üzerinden yayınladığımız Kotlin derslerimize Paket Yapısı ve Import Özelliği konusuyla devam ediyoruz. Eğer okumadığınız bir ders varsa her zaman önceki derslerimizi okumanızı tavsiye ederiz.
Kotlin’de Paket Yapısı
Java’da olduğu gibi Kotlin’de de paket (package) yapısı bulunmaktadır. Paket yapısının amacı kodumuzu farklı isim alanlarına(name space) bölebilmemize olanak sağlayarak özellikle büyük projelerimizde kod okunabilirliğini arttırmaktır.
Paket yapısı teknik olarak kullanmak zorunda olduğumuz bir yapı değildir, aslında tüm kodumuzu aynı klasörde toplayıp paketlere bölmeden projelerimizi hazırlayabiliriz fakat bu projemizin okunabilirliğini oldukça fazla azaltarak çaylakça bir proje ortaya çıkarmamıza sebebiyet verecektir.
Fonksiyonları ve sınıfları anlattıktan sonra paket yapısını kendimizin nasıl kullanacağını daha detaylı olarak göreceğiz, şuanda sadece Kotlin dosylarımızın başına (.kt) package kelimesini ekleyerek paket ismi verebileceğimizi bilmemiz yeterli. Örneğin:
package geometri.sekiller class Dikdortgen(val yukseklik: Int, val uzunluk: Int) { }
Kotlin’de aynı Java’da olduğu gibi aynı pakette bulunan dosyaları direkt olarak kullanabiliyoruz, fakat farklı bir paketteki dosyayı kullanmak istersek import özelliğini kullanmamız gerekiyor.
Kotlin’de Import Özelliği
Kotlin dosyamızın tercihen en üstünde package tanımlamasının hemen altında import tanımlamalarını yapabiliriz. Örneğin
package geometri.hesaplamalar import geometri.sekiller.Dikdortgen fun main(args: Array<String>) { }
Bu şekilde bir tanımlama yaptığımızda, ayrı paketlerde bile olsa Dikdortgen sınıfını bu dosyada kullanabiliriz.
Java’da tek bir dosyada tek bir sınıf yaratılıp dosyanın isminin sınıfın ismiyle aynı olması ve paket isminin klasör ismiyle aynı olması zorunluluğu şeklinde bir yapı var. Kotlin buradaki kısıtlayıcılığı tamamen kaldırıyor. İsmini kendimizin belirlediği tek bir dosya içinde istediğimiz sayıda sınıf tanımlayabiliriz ve bunları paket isminden bağımsız bir klasörde toplayabiliriz. Tabii ki bunu yaparken belirli bir standardı izlemeliyiz, eğer tam olarak nasıl yapacağımızdan emin değilsek klasik Java tarzı klasör ve dosya yapısını korumamızda oldukça büyük fayda olabilir. İlerleyen derslerimizde farklı proje yapılarının örneklerini görebileceksiniz.
Kotlin’de Java’dan farklı olarak fonksiyonların da import edilmesine izin veriliyor. Aynı Java’da olduğu gibi eğer bir paketin altındaki tüm sınıfları import etmek istersek * simgesini kullanabiliriz örneğin import geometri.sekiller.* Burada Java’dan farklı olarak fonksiyonlar’da import edileceği için onları da .* ile import edip kullanabiliriz.
Sonraki derslerimizde görüşmek üzere, selamlar.
Konu hakkında sorularınızı bu sayfanın yorumlar kısmından veya mobilhanem soru cevap sitemizden sorabilirsiniz.
Tüm Kotlin Dersleri için tıklayınız.
28