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
130
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
880
Accessibility in Flutter
miquelbeltran
3
950
Flutter for Web - Codemotion Berlin 2019
miquelbeltran
1
150
Flutter Talk at CFCamp
miquelbeltran
2
590
Flutter X Firestore
miquelbeltran
2
170
Minimalism Driven Development
miquelbeltran
1
190
Flutter, DACHFest & Berlin
miquelbeltran
2
160
DACHFest App: From Idea to Appstore and Play Store in One Day
miquelbeltran
2
87
Sketchnoting & Lettering Workshop
miquelbeltran
3
220
Other Decks in Programming
See All in Programming
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
860
FormFlow - Build Stunning Multistep Forms
yceruto
1
190
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
400
5つのアンチパターンから学ぶLT設計
narihara
1
110
Gleamという選択肢
comamoca
6
760
A2A プロトコルを試してみる
azukiazusa1
2
1.1k
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
480
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
430
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
330
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
120
エンジニア向け採用ピッチ資料
inusan
0
160
生成AIで日々のエラー調査を進めたい
yuyaabo
0
650
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
210
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
For a Future-Friendly Web
brad_frost
179
9.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Agile that works and the tools we love
rasmusluckow
329
21k
What's in a price? How to price your products and services
michaelherold
246
12k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Site-Speed That Sticks
csswizardry
10
660
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Optimizing for Happiness
mojombo
379
70k
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