Kotlin (programovací jazyk)

Kotlin
Vznik2011
AutorJetBrains
VývojářJetBrains
Ovlivněn jazykyJava, Scala, Groovy, C#, Gosu, JavaScript
LicenceApache 2
Webkotlinlang.org
Přípona souboru.kt, .kts, .ktm

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í.

Historie

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]

Filozofie

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í.

Syntaxe

Podobně jako Pascal, TypeScript, Haxe, PL/SQL, F#, GoScala 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.

Sémantika

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 PerluUnix/Linux Shellu. Také je podporováno odvozování typů proměnných.

Ukázka kódu, který vypíše „Hello World!“

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.

  • ?. (safe navigation operator) používaný pro bezpečný přístup k metodě nebo vlastnosti objektu, který může být null. Pokud je objekt null, metoda nebude volána a případný výstup bude null.
  • ?: (null coalescing operator), také nazývaný „Elvis operator“

Ukázka použití operátoru Elvis

Podrobnější informace naleznete v článku operátor Elvis.
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()

Nástroje

  • IntelliJ IDEA podporuje Kotlin prostřednictvím pluginu. Od verze 15 je plugin automaticky přibalen v základní distribuci.
  • JetBrains také oficiálně poskytuje plugin pro Eclipse
  • Apache Maven plugin
  • Apache Ant task
  • Gradle plugin

Reference

V tomto článku byl použit překlad textu z článku Kotlin (programming language) na anglické Wikipedii.

  1. DOTEKOMÁNIE.CZ. Kotlin se zařadil mezi oficiální programovací jazyky Androidu. Dotekomanie.cz [online]. 2017-05-18 [cit. 2020-04-29]. Dostupné online. 
  2. TechCrunch [online]. [cit. 2020-04-29]. Dostupné v archivu pořízeném dne 2020-06-24. (anglicky) 

Externí odkazy


Zdroj datcs.wikipedia.org
Originálcs.wikipedia.org/wiki/Kotlin_(programovací_jazyk)
Zobrazit sloupec 

Kalkulačka - Výpočet

Výpočet čisté mzdy

Důchodová kalkulačka

Přídavky na dítě

Příspěvek na bydlení

Rodičovský příspěvek

Životní minimum

Hypoteční kalkulačka

Povinné ručení

Banky a Bankomaty

Úrokové sazby, Hypotéky

Směnárny - Euro, Dolar

Práce - Volná místa

Úřad práce, Mzda, Platy

Dávky a příspěvky

Nemocenská, Porodné

Podpora v nezaměstnanosti

Důchody

Investice

Burza - ČEZ

Dluhopisy, Podílové fondy

Ekonomika - HDP, Mzdy

Kryptoměny - Bitcoin, Ethereum

Drahé kovy

Zlato, Investiční zlato, Stříbro

Ropa - PHM, Benzín, Nafta, Nafta v Evropě

Podnikání

Města a obce, PSČ

Katastr nemovitostí

Katastrální úřady

Ochranné známky

Občanský zákoník

Zákoník práce

Stavební zákon

Daně, formuláře

Další odkazy

Auto - Cena, Spolehlivost

Registr vozidel - Technický průkaz, eTechničák

Finanční katalog

Volby, Mapa webu

English version

Czech currency

Prague stock exchange


Ochrana dat, Cookies

 

Copyright © 2000 - 2024

Kurzy.cz, spol. s r.o., AliaWeb, spol. s r.o.