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
150
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
930
Accessibility in Flutter
miquelbeltran
3
1k
Flutter for Web - Codemotion Berlin 2019
miquelbeltran
1
170
Flutter Talk at CFCamp
miquelbeltran
2
650
Flutter X Firestore
miquelbeltran
2
180
Minimalism Driven Development
miquelbeltran
1
220
Flutter, DACHFest & Berlin
miquelbeltran
2
180
DACHFest App: From Idea to Appstore and Play Store in One Day
miquelbeltran
2
92
Sketchnoting & Lettering Workshop
miquelbeltran
3
260
Other Decks in Programming
See All in Programming
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
210
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
230
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
170
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
3
1.1k
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
400
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
490
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
170
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
330
浮動小数の比較について
kishikawakatsumi
0
390
CSC307 Lecture 13
javiergs
PRO
0
310
AWS Infrastructure as Code の新機能 2025 総まとめ 〜SA 4人による怒涛のデモ祭り〜
konokenj
10
3.3k
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
140
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.8k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
380
Exploring anti-patterns in Rails
aemeredith
2
280
Statistics for Hackers
jakevdp
799
230k
How to make the Groovebox
asonas
2
2k
Optimizing for Happiness
mojombo
378
71k
Fireside Chat
paigeccino
42
3.8k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
190
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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