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
KMPの今と未来
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Mikami Hiroki
December 15, 2023
Programming
620
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KMPの今と未来
Mikami Hiroki
December 15, 2023
More Decks by Mikami Hiroki
See All by Mikami Hiroki
Accompanistから考えるAndroidの権限許諾
monaapk
0
480
AndroidにおけるWebの進化
monaapk
1
320
FlutterとAndroidの 連携を変えるかもしれないjni
monaapk
1
640
DroidKaigi 2022のカンファレンスアプリを眺める
monaapk
2
1.2k
Circuit⚡
monaapk
0
440
Jetpack Compose と Accompanist
monaapk
0
360
Other Decks in Programming
See All in Programming
Goコンパイラを作ってGoをもっと理解する / Build a Go compiler to better understand Go
ikura_hamu
0
120
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
220
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
730
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
710
DroidKnights 2026 Android A2UI Jetpack Compose 기반의 안전한 AI UI 렌더링 - 박제창
itsmedreamwalker
1
150
AI Augmentation Techniques with Liberty
ivargrimstad
1
340
ActionController meets Protocol Buffers
sorah
1
780
Engineering Biometric UX Across Android Versions | DroidKnights 2026
ryunen344
1
170
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
4
3k
JIS keyboard support in Omarchy
lef237
0
180
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
190
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
410
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
580
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
400
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.7k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
560
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
Docker and Python
trallard
47
4.2k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
600
Embracing the Ebb and Flow
colly
88
5.2k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
370
Paper Plane (Part 1)
katiecoart
PRO
2
12k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.2k
Transcript
<< KMPの今と未来 YUMEMI.apk #7
• 株式会社ゆめみ • AndroidとFlutterをぼちぼち • X: @mono33__ みかみ
KMPの現状や今後のアップデートを紹 介
アジェンダ 1. KMPについて 2. 今後のKMPのアップデート 3. まとめ・所感
1. KMPについて
Kotlin Multiplatform (KMP)の概要 • JetBrainsによって開発されているKotlinベースの マルチプラットフォーム技術 • 2017年11月のアナウンスから6年を経て安定版が登場 [1] Kotlin
Multiplatform, https://www.jetbrains.com/kotlin-multiplatform/ [2] What's new in Kotlin 1.2, https://kotlinlang.org/docs/whatsnew12.html
KMPの設計と特徴 • 単一のコードから複数のプラットフォーム向けのコードを生 成し、クロスプラットフォーム開発を円滑に • プロジェクトにあわせた部分的な導入ができる https://www.jetbrains.com/kotlin-multiplatform/
https://www.jetbrains.com/kotlin-multiplatform/ 他の技術に対してのKMPの優位性 • 段階的・部分的に導入しやすい • NativeとCross-platformの長所の享受
KMPの導入事例 • 公式のドキュメントで紹介されている ◦ アプリのロジックの部分的な共有がメイン • 国内でも導入事例を目にすることが多くなった印象 [3] Case studies,
https://www.jetbrains.com/help/kotlin-multiplatform-dev/case-studies.html
KMPには課題がたくさん ChatGPT
KMPには課題がたくさん ChatGPT iOSエンジニアにとってのハー ドルが高い
KMPには課題がたくさん ChatGPT 今後のKMPのアップデートについて紹介
2. 今後のKMPのアップデート
全体的なアップデートの印象 • 開発環境の全面的な整備と拡張 ◦ JetBrainsを中心にツール・ライブラリエコシステム・学 習リソースなどが整理 • モバイル開発における効率と安定性の向上 ◦ KotlinとSwiftの互換性の改善
JetBrains Fleet • JetBrainsによって開発されている次世代IDE • 多言語対応を特徴にもち、KMPの開発をサポート [4] JetBrains Fleet, https://www.jetbrains.com/fleet/
Amper • プロジェクト設定をサポートするツールとして開発 • Fleetと合わせてJetBrainsが開発 • KotlinやAndroidのビルドシステムの設定は時折辛い ◦ iOSエンジニアにとってはさらに辛い •
Gradleのかわりにyamlで簡潔に宣言的に記述できる [5] Amper – Improving the Build Tooling User Experience, https://blog.jetbrains.com/blog/2023/11/09/amper-improving-the-build-tooling-user-experience/
KMPのエコシステムの成長 • Kotlinを扱うエンジニアを中心にネットワークやストレージ をなどのKMPのライブラリが開発が活発 [6] Kotlin Multiplatform Is Stable and
Production-Ready, https://blog.jetbrains.com/kotlin/2023/11/kotlin-multiplatform-stable/
SKIE • KMPにおいてSwiftとKotlinの相互互換性を改善 • 今年の9月にOSSとして公開、導入事例もみかける [7] SKIE - Swift Kotlin
Interface Enhancer | SKIE, https://skie.touchlab.co/
JetpackライブラリのKMP対応 • Googleが主導して開発を進めているAndroidの主要ライブ ラリ群の一部がKMPをサポート [8] Kotlin Multiplatform, https://developer.android.com/kotlin/multiplatform
JetpackライブラリのKMP対応 • Googleが主導して開発を進めているAndroidの主要ライブ ラリ群の一部がKMPをサポート [8] Kotlin Multiplatform, https://developer.android.com/kotlin/multiplatform ロジックの共有には 関心がありそう
Compose Multiplatform • AndroidのJetpack Composeをベースとした 宣言的UIフレームワーク [9] Compose Multiplatform, https://www.jetbrains.com/ja-jp/lp/compose-multiplatform/
[10] compose-multiplatform, https://github.com/JetBrains/compose-multiplatform
Compose Multiplatform • AndroidのJetpack Composeをベースとした 宣言的UIフレームワーク [9] Compose Multiplatform, https://www.jetbrains.com/ja-jp/lp/compose-multiplatform/
[10] compose-multiplatform, https://github.com/JetBrains/compose-multiplatform 来年iOS beta Web (Wasm) alphaサポート
Compose Multiplatform • AndroidのJetpack Composeをベースとした 宣言的UIフレームワーク [9] Compose Multiplatform, https://www.jetbrains.com/ja-jp/lp/compose-multiplatform/
[10] compose-multiplatform, https://github.com/JetBrains/compose-multiplatform 来年iOS beta Web (Wasm) alphaサポート 情報量が多い
公式によるKMPの学習ソースの整備 [11] Get started with Kotlin Multiplatform, https://www.jetbrains.com/help/kotlin-multiplatform-dev/get-started.html • 手厚いドキュメントやサンプルリポジトリ
SwiftとKotlinの互換性をまとめた資料 [12] kotlin-swift-interopedia, https://github.com/kotlin-hands-on/kotlin-swift-interopedia
• WizardやSlack コミュニティ そのほかのサポート [13] Kotlin Multiplatform Wizard, https://kmp.jetbrains.com/ [14]
#multiplatform, https://slack-chats.kotlinlang.org/c/multiplatform
Awesome Kotlin Multiplatform [15] kmp-awesome, https://github.com/terrakok/kmp-awesome
3. まとめ・所感
まとめ・所感 • KMPは他の技術との棲み分けができそう ◦ 段階的な導入がしやすい • これからが楽しみな技術 ◦ JetBrainsやKotlinを扱うエンジニアを中心に開発 ◦
OSS開発のチャンスもありそう • 開発体制やリソース周りなど技術以外の部分がどうなるか
References 1/2 • [1] Kotlin Multiplatform, https://www.jetbrains.com/kotlin-multiplatform/ • [2] What's
new in Kotlin 1.2, https://kotlinlang.org/docs/whatsnew12.html • [3] Case studies, https://www.jetbrains.com/help/kotlin-multiplatform-dev/case-studies.html • [4] JetBrains Fleet, https://www.jetbrains.com/fleet/ • [5] Amper – Improving the Build Tooling User Experience https://blog.jetbrains.com/blog/2023/11/09/amper-improving-the-build-tooling-user-experience/ • [6] Kotlin Multiplatform Is Stable and Production-Ready, https://blog.jetbrains.com/kotlin/2023/11/kotlin-multiplatform-stable/ • [7] SKIE - Swift Kotlin Interface Enhancer | SKIE, https://skie.touchlab.co/ • [8] Kotlin Multiplatform, https://developer.android.com/kotlin/multiplatform • [9] Compose Multiplatform, https://www.jetbrains.com/ja-jp/lp/compose-multiplatform/ • [10] compose-multiplatform, https://github.com/JetBrains/compose-multiplatform
References 2/2 • [11] Get started with Kotlin Multiplatform, https://www.jetbrains.com/help/kotlin-multiplatform-dev/get-started.html
• [12] kotlin-swift-interopedia, https://github.com/kotlin-hands-on/kotlin-swift-interopedia • [13] Kotlin Multiplatform Wizard, https://kmp.jetbrains.com/ • [14] #multiplatform, https://slack-chats.kotlinlang.org/c/multiplatform • [15] kmp-awesome, https://github.com/terrakok/kmp-awesome
CREDITS: This presentation template was created by Slidesgo, including icons
by Flaticon, infographics & images by Freepik. Thanks!