Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kotlin: The "New" Kid On The Block!

Kotlin: The "New" Kid On The Block!

This talk was held on the Mobile track of The Developer Conference São Paulo 2017, which happened on July 20th. The talk was an introduction to the Kotlin language, with steps about how to start to use it, which companies are using and what are the most benefits of using it on Android, backend, game development and such!

More details about the event: www.thedevelopersconference.com.br/tdc/2017/saopaulo/trilha-mobile

Walmyr Carvalho

July 20, 2017
Tweet

More Decks by Walmyr Carvalho

Other Decks in Technology

Transcript

  1. • Criada pela JetBrains • Open source <3 • Compila

    para JVM e JS • Null safety • Suporta OO e FP (kinda)
  2. A oficialização da linguagem pelo Google é só um reflexo

    de uma vontade que a comunidade já tinha há muito tempo.
  3. TL;DR: Se você hoje trabalha com JVM, seja no Android,

    backend ou em jogos, muito provavelmente você pode usar Kotlin
  4. val a: Int = 1 // valor associado e tipagem

    definida val b = 2 // Tipo `Int` inferido val c: Int // Tipo é requerido c = 3
  5. var a = 1 // nome simples no template: val

    s1 = "a is $a" a = 2 // expressão arbitrária template: val s2 = "${s1.replace("is", "was")}, but now is $a"
  6. fun maxOf(a: Int, b: Int): Int { if (a >

    b) { return a } else { return b } }
  7. val items = listOf("apple", "banana", "kiwi") for (index in items.indices)

    { println("item at $index is ${items[index]}") }
  8. val items = listOf("apple", "banana", "kiwi") var index = 0

    while (index < items.size) { println("item at $index is ${items[index]}") index++ }
  9. fun describe(obj: Any): String = when (obj) { 1 ->

    "One" "Hello" -> "Greeting" is Long -> "Long" !is String -> "Not a string" else -> "Unknown" }
  10. // Como melhorar esse código? val l: Int = if

    (b != null) b.length else -1