Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
970
Flutter for Web - Codemotion Berlin 2019
miquelbeltran
1
150
Flutter Talk at CFCamp
miquelbeltran
2
610
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
88
Sketchnoting & Lettering Workshop
miquelbeltran
3
230
Other Decks in Programming
See All in Programming
問題の見方を変える「システム思考」超入門
panda_program
0
290
AI POSにおけるLLM Observability基盤の導入 ― サイバーエージェントDXインターン成果報告
hekuchan
0
690
Amazon Bedrock Knowledge Bases Hands-on
konny0311
0
150
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
560
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
1k
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
610
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.1k
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
150
Register is more than clipboard
satorunooshie
1
480
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
13k
Module Harmony
petamoriken
2
450
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
250
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Mobile First: as difficult as doing things right
swwweet
225
10k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
670
Side Projects
sachag
455
43k
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