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
Sosuke Okubo
March 29, 2019
Technology
0
28
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
84
IPによる地域制限の浅い話
mojage
0
14
Android Robo Test
mojage
0
50
栗まんじゅう問題を体感するアプリを作って入門した ARKit + SceneKit
mojage
0
99
Actions on Googleのアプリを作ってみた
mojage
0
110
SKStoreReviewController
mojage
0
340
スマホアプリ開発で位置情報をシミュレーションする
mojage
0
280
Other Decks in Technology
See All in Technology
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
130
VSCodeの拡張機能を作っている話
ebarakazuhiro
1
660
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
120
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
170
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
200
MixIT 2024 - Pulumi : Gérer son infra avec son langage de programmation préféré
ju_hnny5
0
110
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
240
開発生産性大幅アップ!Postman VS Code拡張機能
nagix
2
500
20分で完全に理解するGrafanaダッシュボード
hamadakoji
3
770
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
Building a RAG-poweredAI chat appwith Python and VS Code
pamelafox
0
120
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
370
Featured
See All Featured
Statistics for Hackers
jakevdp
789
220k
Making Projects Easy
brettharned
108
5.5k
Documentation Writing (for coders)
carmenintech
60
3.9k
Embracing the Ebb and Flow
colly
80
4.1k
What the flash - Photography Introduction
edds
64
11k
Designing for Performance
lara
601
67k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
14
1.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Become a Pro
speakerdeck
PRO
11
4.5k
Fireside Chat
paigeccino
21
2.6k
Web development in the modern age
philhawksworth
202
10k
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