Kotlin (linguaggio di programmazione)

Da Wikipedia, l'enciclopedia libera.
Kotlin
Autore Jetbrains
Data di origine 2011
Ultima versione 0.13.1513
Utilizzo general purpose
Paradigmi programmazione a oggetti
Tipizzazione forte
Influenzato da Java, Scala, Groovy, F#, Go
Implementazione di riferimento
Implementazione compilatore
Sistema operativo multi-piattaforma
Licenza Apache 2
Sito web kotlin.jetbrains.org

Kotlin è un linguaggio di programmazione general purpose, multi-paradigma, open source attualmente in fase di sviluppo da parte della azienda di software JetBrains, avente sede a Praga. Il leader del progetto è lo sviluppatore russo Andrey Breslav. Kotlin si basa sulla JVM (Java Virtual Machine) ed è ispirato ad altri linguaggi di programmazione tra i quali Scala e lo stesso Java mentre ulteriori spunti sintattici sono stati presi da linguaggi classici, come il Pascal e moderni come Go o F#. Lo sviluppo è iniziato nel 2011 mentre una prima versione pubblica del compilatore, in versione 0.1, è stata pubblicata a gennaio 2012. Kotlin è un linguaggio a tipizzazione statica e forte, ed è particolarmente orientato verso la programmazione a oggetti permettendo peraltro un pieno uso dell'approccio funzionale.

Piattaforme supportate[modifica | modifica wikitesto]

Kotlin allo stato attuale è strutturato per interoperare con la piattaforma Java Runtime Environment come target principale, il che garantisce il funzionamento delle applicazioni in ogni ambiente che accetti la JVM, ivi compreso Android, ma il compilatore è in grado anche di emettere codice Javascript.

Basi teoriche[modifica | modifica wikitesto]

Gli autori del linguaggio si sono posti l'obiettivo di produrre uno strumento che, pur essendo pienamente operativo con l'ambiente java e tutto il suo enorme ecosistema, superasse le limitazioni e le criticità del linguaggio Java stesso. In questo modo non si sarebbe perso il background culturale esistente favorendo la migrazione al nuovo strumento. Tra le caratteristiche distintive ricercate, la capacità di evitare alcune classi di errore, come gli accessi a puntatori nulli.

Hello, World[modifica | modifica wikitesto]

Il seguente esempio propone il classico "Hello, World!":

 // Hello, World!
  package Demo
  fun main(args : Array<String>) {
    println("Hello, world!")
  }

Qui invece l'esempio precedente viene esteso recuperando un parametro dalla riga di comando, si può anche notare la facilità di interpolazione delle variabili all'interno delle stringhe:

  fun main(args : Array<String>) {
    if (args.size == 0) {
      println("Please provide a name as a command-line argument")
      return
    }
    println("Hello, ${args[0]}!")
  }

Collegamenti esterni[modifica | modifica wikitesto]

informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica