Kotlin Nedir ? Neden Geliştirildi? Kotlin'i Tanıyalım [Resimli Anlatım]

RageUnseen

Adanmış Üye
29 Ağu 2015
6,880
247
İstanbul


1)Kotlin, 2010 yılında JetBrains firması tarafından ortaya çıktı.
2)Kotlin, 19 Temmuz 2011 yılında JVM Language Summit etkinliğinde duyuruldu.
3)Kotlin, statik bir programlama dilidir.
4)Kotlin, Apache 2.0 lisansı altında geliştirilen açık kaynak kodlu bir projedir desteklere ve yardımlara açıktır.
5)Projenin kaynak kodları herkese açıktır. Proje destek olmak adına geliştirmeler yapabilirsiniz. Projeyi incelemek ve destek olmak için Github adresini ziyaret edebilirsiniz :GITHUB
6)Kotlin’in ilk geliştirmesini Rusya merkezli bir şirket olan JetBrains’in yazılımcıları tarafından yapılmıştır.
7)Kotlin’in ismi ise Rusyada bulunan Kotlin adasından gelmektedir.

Kotlin Neden Geliştirildi ?



Birçok geliştirici gibi sizinde kendinize bu soruyu defalarca sorduğunuzu düşünüyorum. Java varken neden bu dile ihtiyaç duyuldu ? Ne gerek vardı ki ? Senelerdir Java ile yazıyoruz nereden çıktı bu dil ? gibi birçok geliştirici tarafından sorulmuş olan sorulara cevap olarak JetBrains firması ; “Performans ve güvenliği feda etmeden Java’dan daha özlü kodlar yazmayı sağlamak için bu dili geliştirdik” cevabını vermektedir. Kotlin’in temel hedefi kod satırlarını azaltmak, daha güvenli kod yazmak olarak söyleyebiliriz. Kotlin Javayı bitirdi ya bitirecek gibi yorumlar asılsızdır. Kotlin geliştiricilerinden olan Andrey Breslav, Kotlin’in nesne yönelimli bir dil ve Java’dan “daha iyi bir dil” olarak tasarlandığını söyledi. Ancak hala Java koduyla tamamen birlikte çalıştığı için şirketler Java’dan Kotlin’e kademeli bir geçiş yapıyorlar.

Kotlin Programlama Dilini Yakından Tanıyalım



1)Kotlin, statik olarak Apache 2.0 lisansı altında geliştirilmiş ücretsiz, açık kaynak koda sahip bir programlama dilidir. Kotlin diline destek verip Kotlin’in gelişmesine katkıda bulunabilirsiniz.
2)Kotlin, nesneye yönelimli (object oriented) fonksiyonel bir dildir. Java, C# ve C++ gibi nesne yönelimli bir programlama dilidir.
3)Perl ve Unix/Linux shell script stili dizesine ekleme yapmayı desteklemektedir.
4)Kotlin, Java’ya oranla daha kısa ve daha özgün şekilde kodlama yapılmaktadır. Programcıları sevindiren ve kendine çeken en önemli özelliği sade ve kendine özgün olmasıdır.
5)Kotlin, Java ve Android ile %100 uyumlu bir şekilde çalışmaktadır. Java ile Kotlin bir elmanın yarısı gibi düşünülebilir.
6)Kotlin, Java’ya göre daha güvenli bir dildir. Peki bu güvenlik ne anlam ifade ediyor ? 1965 yılından beri nesne tabanlı programlarda kullanılan ve milyar dolarlık zararlara yol açan null verisi Kotlin ile birlikte daha güvenli olarak ele alınıp sisteme zarar vermesi engellenmiştir. Kotlin de Null hatası almak için özel bir çaba harcamalısınız :)
7) Sunucu ve istemci tabanlı web uygulamaları geliştirmeyi desteklemektedir.
8)JavaScript kodlarına derlenerek HTML sayfalarında kullanılmaktadır. Javascript, HTML gibi web tarafında kullanılan diller ile ilgiliyseniz Kotlin sizin hoşunuza gidecek olan bir dil diye düşünüyorum.
9) Kotlin ve Java birlikte çalışmaktadır. Javanın içinde Kotlin’i , Kotlin’in içinde ise Javayı kullanabilirsiniz. Android Studio içinde yazmış olduğunuz Java kodunu kolaylıkla Kotlin diline çevirebilirsiniz.
10) Kotlin, mevcut Java kütüphanelerini kullanarak uygulama geliştirmeye olanak sağlar. Java ile birlikte çalışmaktadır. Javadan bağımsız halde düşünülemez.
11)Kotlin dilini öne çıkaran en önemli etken ise : Google Şirketinin Android Developer bölümünün bu dile güvenmeleri ve Android uygulamaları geliştirmek için desteklemeleridir.

Kotlin’in Desteklediği Platformlar



Kotlin programlama dili ile 4 ana platformda ya da alanda çeşitli uygulamalar geliştirebilirsiniz. Aşağıda maddeler halinde geliştirme alanları listelenmiştir.

JVM : Server-side Uygulamalar
Android : Android Uygulamalar
Browser : JavaScript tabanlı Web Uygulamalar
Native : MacOS, iOS ve Gömülü sistemler Uygulamaları. (Geliştirilme aşamasındadır.)

Kotlin Vs Java



Bu karşılaştırmayı üç ana başlık altında inceleyebiliriz. Kotlin’in Javada olan bazı eksiklikleri gidermesi, Kotlin de olan Java da olmayan, Java da olup Kotlin de olmayan özellikler şeklinde ayırabiliriz.

a) Kotlin’in Javada olan bazı eksiklikleri gidermesi :
1)Null referansların kontrol edilmesi,
2)Ham veri türü olmaması,
3)Dizilerin değişmemesi
4)Doğru işlev türleri vardır.
5)İstisnaları kontrol etmez.

b) Kotlin de olan Java da olmayan özellikler :
1)Null-safety
2)Smart casts
3)String templates,
4)Properties,
5)Primary constructors,
6)Range,
7)Operator overloading
8)Data Classes
9)Daha fazla bilgiye ulaşmak için Kotlin resmi sayfasını ziyaret edebilirsiniz :

https://kotlinlang.org/

c) Java da olup Kotlin de olmayan özellikler:

1)İstisna Kontrolü
2)Primitive Veri Tipleri
3)Statik Üyeler
4)Joker Tipler
5)Ternary Operatörü

Kotlin ile ilgili Örnekler



Kotlin dilini tanıdıktan ve hangi platformlarda neler yapılabilir bunları öğrendikten sonra sıra geldi Kotlin ile ilgili örnekler yapmaya zaman kaybetmeden seri bir şekilde örneklerimize geçebiliriz :)



Herhangi bir Programlama dili öğrenirken kuşkusuz ekrana yazdırmış olduğumuz “Hello World” örneği ile başlıyoruz. Java da olduğu gibi bir main metodumuz bulunmaktadır. Bu metodun içinde ekrana println komutuyla bir mesaj bastırıyoruz.



Android projedeki örnekte ise Java ya oranla daha sade ve okunabilir bir şekilde kod yapısına sahiptir. MainActivity sınıfının içinde bulunan onCreate metodunda fab değişkenine tıklayınca bir event oluşturuluyor ve bu eventi dinlemek için setOnClickListener metodu kullanılıyor. Kullanıcı her tıklamada ekranda toast mesaj gösteriliyor. Toast mesaj ekranda kullanıcıya kısa süreli mesajlar göstermek için oluşturulmuş yapılardır.



Kotlin ile ilgili Son örneğimizde ise Html ve Javascript ile kullanılabildiğini gösteren bir örnektir. Örnekte görüldüğü üzere html tagları ve Javascript metodları içinde sayı ve karşılığı şeklinde bir örnek yapılmıştır. Html de kulanılan tr ve td tagları tablo yapma ile ilgilidir. Map değişkenine değerler atanmış. createHTML() metodu ile table oluşturulmuş.

Alıntıdır​
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.