kotlin per lo sviluppo lato server

(e non solo)

About me

  • 10+ years spent writing (and reading) code
  • FLOSS Enthusiast
  • Former:
    • Developer Advocate @ Google
    • Kids' football coach 
    • University lecturer
    • Conference speaker
  • Current:
    • Lead developer @ Brandon Group
    • Maintainer for MockK

cenni storici

  • 2011: progetto annunciato da Jetbrains
  • 2016: V1.0
  • 2017: first-class support su Android
  • 2018: 1.3 introduce le coroutine
  • 2019: "preferred language" per Android

==

?

==

++

val str: String = "Hello Kotlin"

val nullableStr: String? = null

str.length // 12

nullableStr?.length // null

nullableStr?.length ?: 0 // 0
val str = "Hello world"

str = "Goodbye world" // Compiler error!

var mutableStr = "Hello world"

mutableStr = "Goodbye world" // Ok

val list: List<String> = listOf()

list.add("Foo") // Compiler error!

val mutableList: MutableList<String> = mutableListOf()

mutableList.add("Bar") // Ok

COROUTINES

varie ed eventuali

  • Data classes
  • Extension functions
  • Funzioni first-class

non solo syntax sugar

  • Compilatore veloce (un saluto a sbt)
  • Evoluzione del linguaggio != evoluzione della JVM
  • Team molto attivo

non solo android (e non solo server)

non solo sviluppo

  • Jupyter notebooks
  • Apache Zeppelin
  • KotlinDL

non solo business logic

kotlin for server-side development

By Mattia Tommasone

kotlin for server-side development

  • 176