Kotlin – pierwsze spojrzenie.

Co to za język?

Kotlin to statycznie typowany język programowania dla nowoczesnych mulit-platformowych aplikacji.
Jest w 100% wymienny z kodem javy, uruchamia się na JVM tak więc…

Komu to potrzebne? A dlaczego?

Odpowiem memem na klasyka:

 

 

 

 

 

 

Więcej błędów kompilacji, mniej niepokojących NullPointerException i debugowania kodu. Kotlin dostarcza mechanizm, zabezpieczający przed operacjami na typach: nullable.

The Billion Dollar Mistake

var output: String = null
output = null //Compilation error


Jak wygląda składnia tego języka?

Już na tym poziome programiści JetBrains oferują bardzo czytelne, szybkie i naturalne do napisania rozwiązania. Jako przykład podaje rekurencyjnie obliczany ciąg Fibonacciego:

fun main(args:Array) {
print(fib(12))
}

fun fib(n:Int): Int {
return when(n) {
0, 1 -> n
else -> fib(n-2) + fib(n-1)
}
}


Algorytm Bubblesort:

fun bubbleSort(arr: IntArray): IntArray {
for (i in 0 until arr.size - 1) {
(0 until arr.size - 1)
.filter { arr[it] > arr[it + 1] }
.forEach { swap(arr, it, it + 1) }
}
return arr
}

private fun swap(arr: IntArray, i: Int, j: Int) {
val temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
}

Co po wywołaniu na przykładowej tablicy da taki efekt:

Before sorting: [8, 5, 3, 4, 3, 3, 77, 446, 1]
After sort: [1, 3, 3, 3, 4, 5, 8, 77, 446]

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *