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
Kotlin Multiplatform
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Sosuke Okubo
March 29, 2019
Technology
0
37
Kotlin Multiplatform
Sosuke Okubo
March 29, 2019
Tweet
Share
More Decks by Sosuke Okubo
See All by Sosuke Okubo
“Build trust through better privacy”を見たメモ
mojage
0
100
IPによる地域制限の浅い話
mojage
0
22
Android Robo Test
mojage
0
60
栗まんじゅう問題を体感するアプリを作って入門した ARKit + SceneKit
mojage
0
110
Actions on Googleのアプリを作ってみた
mojage
0
120
SKStoreReviewController
mojage
0
460
スマホアプリ開発で位置情報をシミュレーションする
mojage
0
290
Other Decks in Technology
See All in Technology
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
750
Windows ファイル共有(SMB)を再確認する
murachiakira
PRO
0
230
visionOS 開発向けの MCP / Skills をつくり続けることで XR の探究と学習を最大化
karad
1
1.2k
FastMCP OAuth Proxy with Cognito
hironobuiga
3
130
Phase08_クイックウィン実装
overflowinc
0
1.4k
GitHub Copilot CLI で Azure Portal to Bicep
tsubakimoto_s
0
180
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
3
13k
The Rise of Browser Automation: AI-Powered Web Interaction in 2026
marcthompson_seo
0
300
20260321_エンベディングってなに?RAGってなに?エンベディングの説明とGemini Embedding 2 の紹介
tsho
0
150
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
tarappo
4
340
AIエージェント×GitHubで実現するQAナレッジの資産化と業務活用 / QA Knowledge as Assets with AI Agents & GitHub
tknw_hitsuji
0
180
Goのerror型がシンプルであることの恩恵について理解する
yamatai1212
1
290
Featured
See All Featured
Navigating Team Friction
lara
192
16k
Paper Plane
katiecoart
PRO
0
48k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
200
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The untapped power of vector embeddings
frankvandijk
2
1.6k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
280
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Chasing Engaging Ingredients in Design
codingconduct
0
150
4 Signs Your Business is Dying
shpigford
187
22k
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