Kotlin (programozási nyelv)

erősen típusos programozási nyelv

A Kotlin erősen típusos programozási nyelv, Java virtuális gépre és JavaScript kódra is lefordítható. A fő fejlesztői a JetBrains szentpétervári csapata, a nyelv a Szentpétervár közelében található Kotlin-szigetről kapta a nevét. Bár a szintaxisa nem kompatibilis a Java programnyelvvel, a Kotlin együttműködik a Java-ban írt kóddal és épít a java programkönyvtár részeire, mint például a Collections keretrendszerre.

Kotlin

Paradigmaobjektumorientált
Jellemző kiterjesztés.kot, .kt
Megjelent2011. július 22.
TervezőJetBrains
FejlesztőJetBrains
Utolsó kiadás1.9.22 (stabil verzió, 2023. december 21.)[1]
Típusosságstatikus
Hatással volt ráJava, Scala, Groovy, C#, Gosu
Operációs rendszerbármilyen támogatott JVM vagy JavaScript interpreter
LicencApache Licenc
Weboldal

Története

A Kotlin programnyelvet 2011 júliusában hozták nyilvánosságra, amit akkor már egy éve fejlesztettek. A fordítót és a hozzá tartozó programokat 2012 februárjában adták ki nyílt forráskódú szoftverként Apache 2.0 licenc alatt.[2] A Jetbrains bevallott motivációja az új nyelv fejlesztésében az, hogy az növelje az IDEA fejlesztőeszköz eladásait.[3]

Filozófiája

Andrej Breslav vezető fejlesztő szerint a Kotlin egy a Java-nál jobb, de azzal még mindig teljesen kompatibilis nyelv, amely lehetővé teszi a fejlesztőknek, hogy a Kotlin felé mozduljanak.[4]

Szintaxis

A Pascal-hoz és a Scala-hoz hasonlóan a Kotlin változó deklarációiban is a változó nevét követi a típus, a kettőt kettőspont választja el. Az utasítások végén a pontosvessző opcionális, általában egy új sor elegendő.[5] Ellenben a Java-val, alapértelmezésben minden metódus publikus, a paramétereik pedig nem felülírhatóak a metódusból.

A Kotlin speciális szintaxissal rendelkezik a null értékek kezelésére. Azok a változók, amelyek felvehetnek null értéket, ? típus deklarációval kell ellátni. Például:

var text : String? = nulltext = null                      // ennek a változónak adhatunk null értéketvar anotherText : String = null  // fordítási hiba - nem adhatunk null értéket ennek a változónak

Szemantika

Az objektumorientált programozásban használatos osztályok és a metódusok mellett (ezeket a Kotlin nyelvben tagfüggvényeknek hívják) a Kotlin támogatja a procedurális programozást is, függvények használatával.[6] A C és C++ nyelvekhez hasonlóan a Kotlin program belépési pontja is a „main” nevű funkció, amelynek paramétere a parancssorban megadott értékeket tartalmazó tömb lehet. A Perl és Unix/Linux shell script stílusú string-behelyettesítés is támogatott. A nyelv rendelkezik a típuskikövetkeztetéshez (type inference) szükséges elemekkel is.

Hello, világ! példaprogram:

fun main(args : Array<String>) { val scope = "world" println("Hello, ${scope}!")}

Támogató eszközök

Lásd még

A nyelv a Java-szerű programnyelvek családjába tartozik, amelyek jellemző képviselői még az alábbiak:

  • Scala (2003)
  • Groovy (2003)
  • Gosu (eredetileg GScript, 2002)
  • Fantom (2009, kb.)
  • Ceylon (2011)

Jegyzetek

Fordítás

Ez a szócikk részben vagy egészben a Kotlin(programming language) című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.