Největší novinkou na letošním Google I/O 17 bylo oznámení, že se programovací jazyk Kotlin stává oficiálním jazykem na Androidu. Google tak vyslyšel hlas komunity, která volala po podpoře Kotlinu už několik let.
Kotlin – jazyk, který je dobré znát
Kotlin získal za poslední roky velkou oblibu zejména u Android vývojářů, kteří oceňují výhody moderního jazyka při vývoji aplikací. Kotlin ale není jen o Androidu, i když v něm v současnosti zažívá největší boom. Můžete ho využít při psaní webových aplikací, serverů apod. Nedávno byl také vypuštěn do světa Kotlin Native, který umožňuje kompilaci pro platformy, kde není dostupná VM, tedy například iOS.
Já osobně jsem s Kotlinem začínal před dvěma lety a musím říct, že od té doby na něj nedám dopustit. Nejdříve mě zajímala především jeho interoperabilita s JavaScriptem. Možnost, že bychom v mobilním hybridním vývoji JavaScript nahradili Kotlinem, byla pro mě i můj tým hodně lákavá.
Příjemně mě překvapilo, co Kotlin vývojářům nabízí, jak si díky němu můžeme pročistit kód a urychlit vývoj. Původně jsem chtěl Kotlin hlavně vyzkoušet a vyhodnotit, jak může být užitečný pro náš vývojářský tým. Teď už Kotlin používáme jako primární programovací jazyk pro vývoj Android aplikací. Další oblastí, kde jsem Kotlin používal, bylo psaní Microservices.
Co je Kotlin
Kotlin je pragmatický programovací jazyk pro JVM, Android a JavaScript. Jedná se o Open Souce jazyk, vytvořený společností JetBrains.
- staticky typovaný programovací jazyk zaměřený na JVM a JavaScript
- klade důraz na interoperabilitu, bezpečnost, jednoduchost a podporu nástrojů
- velmi podobný jazykům Java, C#, JavaScript a Groovy
- nepotřebuje psaní středníku 😉
- od Google I/O 17 je to oficiálně podporovaný jazyk pro vývoj Android aplikací (lze samozřejmě i nadále používat Javu)
Bezpečnost
- Kotlin je takzvaně null safe jazyk, což znamená, že pracujete s možnými nulovými situacemi v době kompilace, abyste zabránili výjimkám za běhu vašeho kódu
- je nutné explicitně specifikovat, jestli může být objekt nulový
Funkcionalita
- Kotlin je v podstatě objektově orientovaný jazyk, není čistě funkcionálním jazykem
- z funkcionálního programování využívá mnoho konceptů, například lambda výrazy ke zjednodušení zápisu kódu
- Kotlin má řadu funkcí pro zvýšení efektivity práce s kolekcemi
Interoperabilita
- můžete dál používat knihovny, které jsou napsané v Javě, protože interoperabilita mezi těmito jazyky funguje velice dobře, což je mimochodem jeden z hlavních cílů jazyka Kotlin
- je samozřejmostí, že v rámci jednoho projektu můžete pracovat s oběma jazyky (Java a Kotlin nebo JavaScript a Kotlin)
Možnosti rozšíření
- jakoukoli třídu lze rozšířit o nové funkce, dokonce i v případě, že nemáte přístup ke kódu této třídy
Kde začít
- Kotlinlang.org
- Try.kotlin.org – vyzkoušejte si Kotlin online v prohlížeči nebo můžete projít malými testy zvanými Kotlin Koans
- Slack – Kotlin je na Slacku
- Referenční dokumentace Kotlinu
- CZ Kotlin User Group
- podívejte se na videozáznam (tutoriál) květnového Meetupu, který eMan Kotlinu věnoval
Příště si povíme o 10 nejlepších funkcích Kotlinu (alespoň podle mě). Co říkáte na Kotlin vy, jaké s ním máte zkušenosti? Budu rád, když se podělíte v komentářích pod článkem.