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
160
0
Share
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
More Decks by Miguel Beltran
See All by Miguel Beltran
Testing Everything with Flutter
miquelbeltran
1
950
Accessibility in Flutter
miquelbeltran
3
1k
Flutter for Web - Codemotion Berlin 2019
miquelbeltran
1
170
Flutter Talk at CFCamp
miquelbeltran
2
660
Flutter X Firestore
miquelbeltran
2
200
Minimalism Driven Development
miquelbeltran
1
230
Flutter, DACHFest & Berlin
miquelbeltran
2
210
DACHFest App: From Idea to Appstore and Play Store in One Day
miquelbeltran
2
100
Sketchnoting & Lettering Workshop
miquelbeltran
3
270
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
490
20260514_its_the_context_window_stupid.pdf
heita
0
1k
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
150
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
720
ハーネスエンジニアリングとは?
kinopeee
13
7.1k
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.3k
空間オーディオの活用
objectiveaudio
0
150
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
0
160
My daily life on Ruby
a_matsuda
3
400
実践ハーネスエンジニアリング:ステアリングループを実例から読み解く / Practical Harness Engineering: Understanding Steering Loops Through Real-World Examples
nrslib
5
5.5k
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
360
Back to the roots of date
jinroq
0
860
Featured
See All Featured
Crafting Experiences
bethany
1
150
HDC tutorial
michielstock
2
660
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
280
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
170
The Invisible Side of Design
smashingmag
302
52k
Ruling the World: When Life Gets Gamed
codingconduct
0
230
Typedesign – Prime Four
hannesfritz
42
3k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
220
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
210
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
Odyssey Design
rkendrick25
PRO
2
620
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