Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
KotlinConf 2017 Keynote
Search
kobito-kaba
November 14, 2017
Programming
880
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KotlinConf 2017 Keynote
KotlinConf 2017のKeynoteの内容をざっくりとまとめました
kobito-kaba
November 14, 2017
Transcript
52 slides
KotlinConf Keynote Yahoo! JAPAN / 森 洋之
About me Yahoo! JAPAN Android黒帯 (こういうところで話す仕事) ヤフオク!のAndroid / iOS / バックエンド担当
Keynote #1
Kotlin/Anywhere
None
None
None
None
Kotlin/Anywhere
Server Android Browser Kotlin/JVM Kotlin/JVM Kotlin/JS
Kotlin & Server
JVM Server • パワフルなJVM • 既存のライブラリが全て使用可能 • Null Pointer Exceptionの排除
Coroutine fun onClick() = launch(UI) { val response = async(CommonPool)
{ Repository.getTimeline() } showTimeline(response.await()) } 非同期処理をかんたんに、コールバック地獄もなしに、書ける
• 100% KotlinのWebフレームワーク • 100% 非同期 • Coroutines from the
ground up
experimental != unstable
Use. Coroutines. Now
Kotlin & Browser
Kotlin/JS JavaScript Moduleのサポート dynamic Type Definitely Typed Header
Kotlin/JS React Demo(ありません) goo.gl/YkYfk3
Kotlin & Android
None
2.5x Google Playにアップロードされている Kotlinを使用したアプリ
17% Kotlinを使用するAndroid Studio プロジェクト
Android Studio 3.0 Android Support Library Annotations Android Kotlin Guides
Android Kotlin Documentation
Android Studio 3.0 • Kotlin Pluginが同梱 • Kotlin Lintサポート •
Kotlinプロジェクトテンプレート
Android Support Library • will support Kotlin Annotations from 27.0.0
goo.gl/knwckS Android Kotlin Guide
Android Kotlin Docs & Samples goo.gl/UWKfnc
Multiplatform Projects
Server Android Browser Kotlin/JVM Kotlin/JVM Kotlin/JS
None
*.class *.js *.class *.js
共通のロジック プラットフォームに 依存した ロジック プラットフォームに 依存した ロジック
actual external class Date { … actual fun getFullYear(): Int
… } expect class Date() { … fun getFullYear(): Int … } common actual class Date { private val calendar: Calendar … actual fun getFullYear() = calendar[YEAR] … } JVM JS
fun Pair<Date, Date>.toReadableString(): String { … if (from.getDate() != to.getDate()
|| from.getMonth() != to.getMonth() || from.getFullYear() != to.getFullYear()) { … } … } common
Server Android Browser Kotlin/JVM Kotlin/JVM Kotlin/JS
Server Android Browser Kotlin/JVM Kotlin/JVM Kotlin/JS iOS Kotlin/Native
Kotlin & iOS
Native Binary LLVM
Kotlin/Native • iOS • macOS • Windows • Linux •
Android NDK • WebAssembly
Server Android Browser Kotlin/Native Kotlin/Native Kotlin/Native iOS Kotlin/Native
Sample goo.gl/AQkK6S
Kotlin/Anywhere
Keynote #2
Party Keynote
What is a “Party Keynote”
None
None
None
None
まとめ
• Kotlinの利用は爆発的に伸びている • Coroutine使おう • どこでもKotlinを!
More Decks by kobito-kaba
See All by kobito-kaba
新規プロジェクトでやってよかったことまとめ
kobitokaba
1
930
Youtube like BottomNavigation
kobitokaba
0
280
Modularizing and Refactoring Android App with Clean Architecture
kobitokaba
0
300
Slice Your App
kobitokaba
2
1.3k
Inside Jetpack
kobitokaba
2
180
Generating and Transforming Kotlin code
kobitokaba
0
150
Conference Tourism
kobitokaba
0
310
Inside Jetpack Architecture Components
kobitokaba
0
260
Kotlinもう一歩
kobitokaba
8
17k
Other Decks in Programming
See All in Programming
SODA - FACT BOOK(EN)
sodainc
1
240
AIが実装を担う時代の「技術設計」と「チームマネジメント」
kamina_zzz
2
270
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
320
疎結合とは何か?ソフトウェア設計における結合バランスについて考える #phpcon_niigata
kajitack
0
160
Spec-driven Development with AI
simas
PRO
0
2.3k
Seven New Principles of Software Engineering
yegor256
0
500
Kawaiicon: Kubernetes, it's no longer cool, but let's secure it anyway!
barnbarn
0
130
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
Rails初心者がパスキーを実装してみて大変だったこと
ktombow
0
190
[Kotlin Fest 2026] eBPF Tracing for Kotlin
takehaya
1
140
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
160
Scalaの型でマルチテナントの認可を守る
nextbeatdev
0
130
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
400
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
KATA
mclloyd
PRO
35
16k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
680
Code Reviewing Like a Champion
maltzj
529
40k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
560
Odyssey Design
rkendrick25
PRO
3
950