Tahun 2010, JetBrains memulai sebuah proyek baru. Proyek ini adalah sebuah bahasa pemrograman statically typed yang menargetkan pada JVM, Android, JavaScript dan Native. Proyek ini bernama Kotlin, nama tersebut diambil dari sebuah pulau di Rusia dari inspirasi oleh pengembang yang ditetapkan sebagai nama bahasa pemrograman tersebut. Dikarenakan mungkin pulau tersebut terletak dekat dari markas tim programer JetBrains, yaitu di Saint Petersburg, Rusia. Bahasa Kotlin ini pertama kali dirilis di bulan Februari 2016 dengan versi 1.0. Saat ini sudah mencapai versi 1.7.0 di tahun 2022. Di balik kemajuannya Kotlin, terdapat pengembang - pengembang berbakat dan kreatif dari JetBrains. Kotlin dikembangkan sekitar lebih dari 50 developer yang dipimpin oleh Andrey Breslav. Mereka semua mendapatkan ide dari bahasa pemrograman yang sudah ada seperti Java, Scala, JavaScript, C# dan serta Groovy.
Apa yang membedakan Kotlin?
Menurut JetBrains bahwa Kotlin sangat mudah dipelajari karena Kotlin tergolong proyek open-sources, maka Kotlin dapat bebas kita gunakan secara tidak berbayar. Kotlin buat dan dikembangkan di bawah lisensi Apache 2.0 dengan kode sumbernya bisa Anda akses di laman GitHub-nya. Kotlin digunakan untuk bermacam-macam pengembangan aplikasi, baik itu server atau backend, website, maupun Android. Bahkan memungkinan Kotlin juga bisa digunakan untuk data science dan machine learning.
Menarik, bukan?
Dukungan dari tools untuk Kotlin , sangat besar sehingga kita bisa dengan mudah memakai Kotlin pada IDE seperti IntelliJ IDEA, Android Studio, Eclipse, dan NetBeans. Di sini Anda pun bisa menggunakan perintah terminal command untuk mengkompilasi dan menjalankan Kotlin. Begitu juga untuk membuild tools.
Sebagaimana telah dijelaskan, kita dapat menargetkan Kotlin ke beberapa target. Kotlin dapat menghasilkan bytecode yang berbeda sesuai dengan targetnya. Ketika menargetkan JVM, Kotlin dapat menghasilkan bytecode yang sesusai kompatibel dengan Java. Kemudian saat menargetkan JavaScript, Kotlin akan melakukan transpile ke ES5.1 dan menghasilkan kode yang kompatibel dengan sistem modul termasuk AMD serta CommonJS. Sedangkan pada native, Kotlin akan menghasilkan kode yang dispesifikan dengan platformnya melalui LVVM.
Apa yang membedakan Kotlin?
Menurut JetBrains bahwa Kotlin sangat mudah dipelajari karena Kotlin tergolong proyek open-sources, maka Kotlin dapat bebas kita gunakan secara tidak berbayar. Kotlin buat dan dikembangkan di bawah lisensi Apache 2.0 dengan kode sumbernya bisa Anda akses di laman GitHub-nya. Kotlin digunakan untuk bermacam-macam pengembangan aplikasi, baik itu server atau backend, website, maupun Android. Bahkan memungkinan Kotlin juga bisa digunakan untuk data science dan machine learning.
Menarik, bukan?
Dukungan dari tools untuk Kotlin , sangat besar sehingga kita bisa dengan mudah memakai Kotlin pada IDE seperti IntelliJ IDEA, Android Studio, Eclipse, dan NetBeans. Di sini Anda pun bisa menggunakan perintah terminal command untuk mengkompilasi dan menjalankan Kotlin. Begitu juga untuk membuild tools.
Sebagaimana telah dijelaskan, kita dapat menargetkan Kotlin ke beberapa target. Kotlin dapat menghasilkan bytecode yang berbeda sesuai dengan targetnya. Ketika menargetkan JVM, Kotlin dapat menghasilkan bytecode yang sesusai kompatibel dengan Java. Kemudian saat menargetkan JavaScript, Kotlin akan melakukan transpile ke ES5.1 dan menghasilkan kode yang kompatibel dengan sistem modul termasuk AMD serta CommonJS. Sedangkan pada native, Kotlin akan menghasilkan kode yang dispesifikan dengan platformnya melalui LVVM.
Perkembangan Kotlin pada Android pun terbilang sangat cepat. Bahkan acara Google I/O 2019 lalu, Google mengumumkan Kotlin First!, yaitu menetapkan Kotlin sebagai bahasa pemrograman nomor 1 (satu) untuk Android. Hampir semua update pada platform Android saat ini sudah menetapkan Kotlin pada dokumentasinya. Tim Android juga merilis Android Jetpack yang merupakan library yang digunakan dalam memanfaatkan fitur bahasa Kotlin dengan lebih mendalam. Semua dokumentasi juga disediakan dengan paparan yang sangat jelas dan lengkap.