What’s a Kotlin (Apsih Kotlin Itu) ?
Penulis : M Alamsyah
Ketika seseorang baru mendengar kata kotlin pasti mereka bertanya :
Apa itu Kotlin ?
Oke kita bahas satu persatu apa itu kotlin ? apakah sebuah makanan tradisional, atau lainnya. Kotlin adalah sebuah bahasa pemrograman dapat digunakan semua platform seperti JVM, Android, dan Java Script. Kotlin diambil dari sebuah pulau di negara Rusia yaitu Kotlin Island yang dikembangkan oleh JetBrain.
Kotlin ini dapat dioperasikan secara bersamaan dengan bahasa java contoh kasus ketika kita menjadi mobile developer dan ingin memaintenance aplikasi tersebut tapi kita hanya menguasai kotlin sedangkan penggunaan bahasa sebelumnya pada aplikasi tersebut oleh senior developer menggunakan bahasa java disini kita tetap bisa menggunakan bahasa kotlin secara bersamaan tanpa merusak kodingan sebelumnya
Why Kotlin (Kenapa Harus Kotlin) ?
- Less code
Artinya kode yang kita buat jauh lebih sedikit dan sederhana dibanding kita menggunakan java. - Null Safe
Karena kotlin aman dari masalah Nullbility dan Mutability pada umumnya program akan force close ketika variable belum didefinisikan - Interoperable
Seperti yang dikatakan sebelumnya kotlin itu introperable atau dapat dijalankan bersamaan dengan java - Have a Unique Library
Mempunyai beberapa jennis library unik yang hanya dimiliki oleh kotlin tersebut contohnya library anko library ini mendukung program tanpa XML code untuk layout nya dan ada jenis lainnya seperti KTK dan Coin library - Lambda Expression
Object Oriented dan Functional nya menggunakan lambda ini juga mendukung agar code kita lebih menjadi sedikit - Android Kotlin Extension
Kotlin ini sangat sangat hemat code dia mempunyai plugin android kotlin extension ini juga digunakan agar source code yang lebih simple dan mudah dibaca dibandingkan java
# Contoh penulisan POJO dalam Java
# Ketika POJO Menngunakan Kotlin
Program Pertama Kotlin
Cara membuat program kotlin kita dapat memanfaat kan playground yanag ada di situs resmi kotlin kita bisa membuka link ini https://play.kotlinlang.org
- Hello World
fun main() {
println(“Hello World1”)
println(“Hello World2”)
print(“Hello World3”)
print(“Hello World4”)
}//Output
Hello World1
Hello World2 Hello World3Hello World4
Dalam program hello world terdapat 2 perbedaan untuk perintah menampilkan yaitu print (Menampilkan dengan tidak membuat line baru) dan println (Menampilkan dengan membuat line baru)
2. Variable Mutable dan Immutable
Apa itu Mutable dan Immutable ? Mutable (var) adalah sebuah deklarasi variable yang menandakan data yang didalam variable tersebut dapat diubah sedangkan, Immutable (val) adalah kebalikannya yaitu sebuah deklarasi variable yang menandakan dari yang didalam variable tersebut tidak dapat dirubah untuk lebih jelasnya kalian bisa lihat contoh program dibawah ini :
Mutable
/* variable
* mutable dan immutable
*/ fun main() {
//Muttable
var name = "muhamad"
var angka : Int = 100
var number : Double = 23.0
name = "alamsyah"
angka = 18
number = 60.0
println(name)
println(angka)
println(number)
}//Outputalamsyah
18
60.0
Immutable
/* variable
* mutable dan immutable
*/fun main() {
//Immutable
val name = "muhamad"
val angka : Int = 100
val number : Double = 23.0
name = "alamsyah"
angka = 18
number = 60.0
println(name)
println(angka)
println(number)
}//Output
Val cannot be reassigned
3. Conditional
Conditional atau bisa kita sebut percabangan dalam suatu program untuk menentukan nilai dalam data tersebut contoh kasus dalam array data ada kata kunci jakarta, jogja, padang. Jika data yang dipilih jakarta maka yang ditampilkan adalah kerak telor, jogja = bakpia, padang = rendang. Tampilkan data ketiga ketika tidak ditemukan kata kunci maka outputnya data tidak ditemukan, jika ditemukan maka outputnya sesuai makanan daerah masing masing
/* Condition
*/fun main() {
val dataArray = arrayOf(“jakarta”,”jogja”,”padang”)
when (dataArray[2]) {
“jakarta” -> println(“kerak telor”)
“jogja” -> (“bakpia”)
“padang” -> println(“rendang”)
else -> println(“data tidak ada”)
}
}
4. Looping Data
Looping adalah seuatu perulangan data yang difungsikan agar data yang diinginkan otomatis diulang dengan berbagai aturan tertentu contoh program looping kalian dapat lihat dibawah ini :
/* Looping Data
*/fun main() {
//Looping basic
//menampilkan angka 1 sampai 5
println("Looping data1")
for (i in 0..5) {
println(i)
} //Looping With Condition
//Menampilkan kelipatan 2 dari angka 0 sampai 10
println ("\n\nLooping data2")
for (a in 0..10) {
val b= i%2
when(b){
0 -> println(a)
}
} //Looping with data array
//menampilakan data yang ada di dalam array secara berulang
val dataArray = arrayOf("jakarta","solo","jogja",1)
for (i in dataArray.indices){
println(dataArray[i])
}}//Output
Looping data1
0
1
2
3
4
5Looping data2
0
2
4
6
8
10
jakarta
solo
jogja
5. Calling Function and New Class
Function adalah sebuah serangkaian kode yang disembunyikan dari pemanggil sedangkan, Class adalah kumpulan beberapa function yang memiliki tugas tugas tertentu nahh… disini kita akan membahas bagaimana cara cara memanggil function atau class baru pada function pemanggil untuk lebih jelasnya kalian bisa melihat code dibawah ini :
/* Basic Calling Class
*/
fun main() {
//Call a new function -> Panggil function baru
functiondata1()
//Make a variable for calling Class->Buat variable untuk memanggil
Class
val dataClass = DataClass()
// Now you can call the function in Class for mapping inside Caller
// Sekarang kamu dapat memanggil function yang ada didalam class
// kedalam pemanggil
dataClass.functiondata2()
dataClass.functiondata3()}//New Function
fun functiondata1(){
}//New Class
class DataClass(){
//new Function
fun functiondata2(){
}
fun functiondata3(){
}
}
Task For Beginner
fun main() {
//Function First Basic //Pertama Basic
dataTest1()
//Function Second With Parameter //Kedua dengan parameter
val a = dataTest2(12,12)
println(a)
//Class with parameter // Class dengan parameter
val test4 = DataClass1(“Fun With Kotlin”)
test4.testing1()
} fun dataTest1(){
println(“Alamsyah “ + 18 + “ Years”)
}fun dataTest2(number1 : Int, number2 : Int) : Double{
val hasil = number1.toDouble() + number2.toDouble()
return hasil
}class DataClass1(val test : String){
fun testing1(){
println(test)
}
}//Output
Alamsyah 18 Years
24.0
Fun With Kotlin
Task Complex
Task 1 : membuat sebuah function dengan 5 parameter , 3 string , 2 integer dan mempunyai return double semua nilai dikalikan semua
Task 2 : bikin sebuah class dengan mempunyai 3 function dan waktu dipanggil function dikalikan
Completed Task
Task 1 :
fun main() {
val a = latihan1(“10”, “10”, “10”, 10, 10)
println(a)
}
fun latihan1(angka1 : String, angka2 : String, angka3 : String, angka4 : Int, angka5 : Int ) : Double{
val a1 = angka1.toDouble()
val a2 = angka2.toDouble()
val a3 = angka3.toDouble()
val a4 = angka4.toDouble()
val a5 = angka5.toDouble()
val result = a1 * a2 * a3 * a4 * a5
return result
}//Output
1000000.0
Task 2 :
fun main() {
val a = Latihan2()
val b = a.function1(10,10)
val c = a.function2(“10”,10)
val d = a.function3(“10”,”10",10)
val hasilakhir = b * c * d
println (hasilakhir)
}
class Latihan2(){
fun function1(angka1: Int, angka2 : Int) : Double{
val result = angka1.toDouble() + angka2.toDouble()
return result
}
fun function2(angka1: String, angka2 : Int) : Double{
val result = angka1.toDouble() + angka2.toDouble()
return result
}
fun function3(angka1: String, angka2 : String, angka3 : Int) : Double{ val result = angka1.toDouble() + angka2.toDouble() +
angka3.toDouble()
return result
}
}//Output
12000.0
Sumber :
https://medium.com/@alamsyah15/kotlin-fundamental-4cbf5b2a1b3b