$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What's New In Kotlin at Google IO 2019 - Summary
Search
Miguel Beltran
May 29, 2019
Programming
0
140
What's New In Kotlin at Google IO 2019 - Summary
Everything that was presented as new in Kotlin at Google IO in 5 minutes
Miguel Beltran
May 29, 2019
Tweet
Share
More Decks by Miguel Beltran
See All by Miguel Beltran
Testing Everything with Flutter
miquelbeltran
1
910
Accessibility in Flutter
miquelbeltran
3
980
Flutter for Web - Codemotion Berlin 2019
miquelbeltran
1
160
Flutter Talk at CFCamp
miquelbeltran
2
620
Flutter X Firestore
miquelbeltran
2
170
Minimalism Driven Development
miquelbeltran
1
200
Flutter, DACHFest & Berlin
miquelbeltran
2
170
DACHFest App: From Idea to Appstore and Play Store in One Day
miquelbeltran
2
89
Sketchnoting & Lettering Workshop
miquelbeltran
3
240
Other Decks in Programming
See All in Programming
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
7
1k
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
160
Microservices rules: What good looks like
cer
PRO
0
1.1k
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
590
無秩序からの脱却 / Emergence from chaos
nrslib
3
13k
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
1k
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.1k
dnx で実行できるコマンド、作ってみました
tomohisa
0
140
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
200
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
160
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
2
650
AIコーディングエージェント(Gemini)
kondai24
0
200
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
720
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Speed Design
sergeychernyshev
33
1.4k
Building Adaptive Systems
keathley
44
2.9k
The Pragmatic Product Professional
lauravandoore
37
7.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.8k
KATA
mclloyd
PRO
32
15k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Transcript
What’s New in Kotlin Google I/O 2019
Back To The Future: 2017 2017 Keynote → Google announces
official Kotlin support Creation of Foundation: - Lead Language Designer - Control breaking changes via Language Committee
State Of Kotlin 2019 ➔ Preferred language by Google for
Android dev ➔ Best support in Jetpack libraries ◆ KTX, Jetpack Compose, etc. ➔ Used at Google ◆ Drive, Nest, Home, system UI, etc. ➔ Koltin/Native → Now Beta! ➔ Coroutines everywhere
Capturing ‘when’ val response = getResponse() when (response) { OK
-> process(response) CANCELED -> print("canceled") }
Capturing ‘when’ when (val response = getResponse()) { OK ->
process(response) CANCELED -> print("canceled") }
Experimental Annotation @Experimental(level = WARNING) annotation class NewAPI @NewAPI class
MyService val service = MyService()
Contracts fun MyClass?.notNull(): Boolean { contract { returns(true) implies(this@notNull !=
null) } return this != null }
Serializable Annotation @Serializable data class Customer( val id: Int, val
name: String ) Json.stringify(Customer.serializer(), customer)
Flow → Asynchronous cold streams, in preview! val values: Flow<Int>
= flow { delay(1000) emit(42) } values.collect { value -> println("Received $value") }
More Language Features! ➔ Unsigned Ints ➔ Better parallel builds
with Gradle ➔ Incremental Annotation Processor with KAPT ➔ New Type Inference Engine (helps with Rx!) ➔ Progressive Mode (more experimental features)
Better Community Support ➔ Code Samples in Kotlin ➔ New
Online Training w/ Udacity
None
None