programovací jazyk From Wikipedia, the free encyclopedia
Kotlin je staticky typovaný programovací jazyk běžící nad JVM, s možností kompilace do JavaScriptu. Jeho hlavním vývojářem je tým programátorů ze společnosti JetBrains, pracující z pobočky v ruském Petrohradu (název je odvozen od ruského ostrova Kotlin poblíž Petrohradu). V lednu roku 2012 byl Kotlin jmenován programovacím jazykem měsíce časopisem Dr. Dobb’s Journal. I když není Kotlin syntakticky kompatibilní s Javou, je navržen pro interoperabilitu s knihovnami Javy a na některých knihovnách jádra dokonce závisí.
![]() | |
Vznik | 2011 |
---|---|
Autor | JetBrains |
Vývojář | JetBrains |
Ovlivněn jazyky | Java, Scala, Groovy, C#, Gosu, JavaScript |
Licence | Apache 2 |
Web | kotlinlang.org |
Přípona souboru | .kt, .kts, .ktm |
V červenci roku 2011 představila společnost JetBrains nový programovací jazyk pro JVM s názvem Kotlin, který byl tou dobou již rok ve vývoji. Vedoucí týmu JetBrains Dimitry Jemerov prohlásil, že většina jazyků kromě Scaly nenabízí možnosti které jeho tým vyžadoval. Problémem Scaly byl podle Jemerova příliš dlouhý čas kompilace. Jedním ze základních cílů Kotlinu je tedy kompilace alespoň tak rychlá jako u čisté Javy. V únoru 2012 uvolnil JetBrains Kotlin jako open source pod licencí Apache 2. Kotlin v. 1.0 byl představen 15. února 2016. Tato verze je považována za první oficiálně stabilní vydání a JetBrains se od této verze bude snažit o zachování zpětné kompatibility.
V květnu roku 2017 na konferenci Google I/O bylo oznámeno, že se Kotlin stává oficiálním programovacím jazykem pro mobilní platformu Android.[1] Tento krok způsobil další rozšíření jazyka v Android komunitě, kde se stal oblíbenou alternativou jazyka Java. To vedlo v roce 2019 k oznámení společnosti Google, že ve vývoji pro Android se Kotlin stává preferovaným jazykem.[2]
Podle vedoucího vývoje Andreye Breslava je Kotlin navržen jako průmyslově spolehlivý objektově orientovaný jazyk, který je lepší než Java, ale je s ní naprosto interoperabilní.
Podobně jako Pascal, TypeScript, Haxe, PL/SQL, F#, Go a Scala a na rozdíl od jazyků odvozených od C, jako například C++, Java, C# a D mají proměnné a seznamy parametrů v Kotlinu datový typ deklarovaný až po názvu (oddělený dvojtečkou). Stejně jako v jazycích Scala a Groovy jsou středníky volitelné a většinou se používají jen v případě, že je vzhledem k čitelnosti kódu potřeba mít více příkazů na jednom řádku.
Vedle tříd a metod (které se v Kotlinu nazývají „member functions“) vlastních objektově orientovaným jazykům podporuje Kotlin i procedurální programování za použití funkcí. Stejně jako v C a C++ je vstupním bodem do aplikace funkce s názvem „main“, která přijímá jako jediný argument pole argumentů z příkazové řádky. Kotlin podporuje interpolaci řetězců ve stylu Perlu a Unix/Linux Shellu. Také je podporováno odvozování typů proměnných.
fun main() {
val scope = "World"
println("Hello $scope!")
}
Kotlin rozlišuje mezi nulovatelnými a nenulovatelnými datovými typy. Všechny nulovatelné objekty musejí být deklarovány s otazníkem („?“) za názvem typu. Operace s nulovatelnými objekty vyžaduje od vývojáře speciální přístup – před použitím hodnoty je nutné zkontrolovat, jestli není null. Kotlin obsahuje tzv. null-safe operátory, tedy operátory, které v případě že je objekt null, nevyhodí Exception.
fun sayHello(maybe : String?, neverNull : Int) {
// použití operátoru Elvis
val name : String = maybe ?: "stranger"
println("Hello $name")
}
// vrátí null pokud je foo null, nebo bar() nebo baz() vrátí null
foo ?. bar() ?. baz()
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.