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
Kotlin Multiplatform
Search
Sosuke Okubo
March 29, 2019
Technology
53
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kotlin Multiplatform
Sosuke Okubo
March 29, 2019
More Decks by Sosuke Okubo
See All by Sosuke Okubo
“Build trust through better privacy”を見たメモ
mojage
0
110
IPによる地域制限の浅い話
mojage
0
29
Android Robo Test
mojage
0
69
栗まんじゅう問題を体感するアプリを作って入門した ARKit + SceneKit
mojage
0
120
Actions on Googleのアプリを作ってみた
mojage
0
130
SKStoreReviewController
mojage
0
470
スマホアプリ開発で位置情報をシミュレーションする
mojage
0
300
Other Decks in Technology
See All in Technology
AIエージェントの一手は 誰も見ていない - Falco拡張OSS「Prempti」とeBPFで サーバーレス実行基盤を二層防御する
keitah
0
260
おい、エージェントを使って終わらせろ
nwiizo
2
730
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
2
960
beyond jj: config & tools ecosystem
indirect
0
5.2k
事業課題から技術的負債に向き合う
sansantech
PRO
2
2k
.NET WebAssemblyで実現するクライアントサイドAI推論:NuGetからViteまで、2つのエコシステムを繋ぐビルド戦略
yamachu
0
210
LLMに渡さなかった仕事
nanaism
0
990
SREへの勘違いに気づいた後の話
tomodakengo
0
110
「ピッケル本」日本語版は4.0(第6版)が出版されるべき / pickaxe4-nagoyark05
kakutani
2
190
AIは推し活である。
kurazuuuuuu
1
830
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
360
ユーザー価値を届け続けるためにウォンテッドリーが大切にしている文化
kotaminato
0
180
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
240
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
500
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
240
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
What's in a price? How to price your products and services
michaelherold
247
13k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
460
Designing Experiences People Love
moore
143
24k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Everyday Curiosity
cassininazir
0
320
WENDY [Excerpt]
tessaabrams
14
39k
Transcript
Kotlin Multiplatform 2019/3/29 Xtone社内勉強会 Sosuke Okubo
Kotlin Multiplatformとは • Kotlinでマルチプラットフォームサービスを作る仕組み ◦ Kotlinはそもそもいろんなプラットフォームで動く ▪ Kotlin/JVM ▪ Kotlin/Native
▪ Kotlin/JS • Kotlin Multiplatformはプラットフォーム間でコードを共有する仕組みを提供してくれ るもの
iOSとAndroidでコードを共有する • Android → Kotlin/JVM • iOS → Kotlin/Native ◦
Kotlin/NativeがiOS向けのFrameworkを出力することができる ▪ つまりiOSからKotlinで書いたコードを呼べる ◦ KotlinからiOSのFrameworkも利用できる ▪ https://kotlinlang.org/docs/reference/native/objc_interop.html ▪ ただしObjective-Cに公開されているAPIのみ
デモ:公式チュートリアルをやってみる https://kotlinlang.org/docs/tutorials/native/mpp-ios-android.html
そのほかのMPP対応ライブラリ • Ktor Http Client ◦ httpクライアント ◦ KtorというKotlin製のサーバーフレームワークのコンポーネント •
kotlinx.serialization ◦ JSONやProtobufに対応したシリアライズライブラリ • Kodein ◦ DIコンテナ
まとめ • Kotlin MultiplatformでiOSとAndroidでコードを共有できる ◦ それぞれのプラットフォームでの開発の仕方は基本的には変わらない ◦ iOSはXcodeを、AndroidはAndroid Studioを使って今までどおり開発ができる •
夢がある
参考レポジトリ • https://github.com/JetBrains/kotlin-examples/tree/master/tutorials/mpp-iOS-An droid • https://github.com/ktorio/ktor-samples/tree/master/mpp/client-mpp • https://github.com/DroidKaigi/conference-app-2019 • https://github.com/JetBrains/kotlinconf-app
• https://github.com/adrianbukros/github-multiplatform-example