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 MPPと戯れるノクチル
Search
subroh_0508
December 05, 2020
Technology
0
620
Kotlin MPPと戯れるノクチル
アイマスハッカソン2020 オンライン!のLT資料です。
https://imas.connpass.com/event/194308/
subroh_0508
December 05, 2020
Tweet
Share
More Decks by subroh_0508
See All by subroh_0508
Mastraを教えたら、非エンジニアが"闇"の力を手に入れた
subroh0508
0
16
Compose MultiplatformでもHot Reloadが動くらしい
subroh0508
2
250
Compose for Webでポートフォリオサイトを作る
subroh0508
2
310
あらゆるアプリをCompose Multiplatformで書きたい! -ネイティブアプリの「あの機能」を私たちはどう作るか-
subroh0508
1
3k
登壇の心理的ハードルをコントロールする技術
subroh0508
2
600
テストコードを書きながらCompose Multiplatformを乗りこなす
subroh0508
0
1.2k
自己効力感を二次元アイドル作品から得ながら社会人としての成長を超加速させる
subroh0508
2
790
担当アイドルを応援する傘を作ろう! (として失敗した話)
subroh0508
0
640
buildSrc/Composite Buildで必要なバージョン情報も Version Catalogから参照したい!
subroh0508
0
1.7k
Other Decks in Technology
See All in Technology
AWS CDK 開発を成功に導くトラブルシューティングガイド
wandora58
3
140
american aa airlines®️ USA Contact Numbers: Complete 2025 Support Guide
aaguide
0
460
Lufthansa ®️ USA Contact Numbers: Complete 2025 Support Guide
lufthanahelpsupport
0
230
How to Quickly Call American Airlines®️ U.S. Customer Care : Full Guide
flyaahelpguide
0
230
第64回コンピュータビジョン勉強会「The PanAf-FGBG Dataset: Understanding the Impact of Backgrounds in Wildlife Behaviour Recognition」
x_ttyszk
0
130
推し書籍📚 / Books and a QA Engineer
ak1210
0
120
大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化
plaidtech
PRO
0
260
【LT会登壇資料】TROCCO新コネクタ「スマレジ」を活用した直営店データの分析
kazari0425
1
140
[ JAWS-UG千葉支部 x 彩の国埼玉支部 ]ムダ遣い卒業!FinOpsで始めるAWSコスト最適化の第一歩
sh_fk2
2
150
CDK Vibe Coding Fes
tomoki10
1
450
2025-07-06 QGIS初級ハンズオン「はじめてのQGIS」
kou_kita
0
180
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Faster Mobile Websites
deanohume
307
31k
Site-Speed That Sticks
csswizardry
10
690
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
GraphQLとの向き合い方2022年版
quramy
49
14k
Gamification - CAS2011
davidbonilla
81
5.4k
Transcript
,PUMJO.11ͱٔΕΔϊΫνϧ ΞΠϚεϋοΧιϯΦϯϥΠϯʂ ʹ͜͠Γ͞ͿΖʙ!TVCSPI@
,PUMJO.11ͱٔΕΔϊΫνϧ ΞΠϚεϋοΧιϯΦϯϥΠϯʂ ʹ͜͠Γ͞ͿΖʙ!TVCSPI@ ˞தͷਓʹΦϑΝʔΛग़͓ۚ͢ͱݖྗ͕ͳ͔ͬͨͨΊ ɹ$7ɾʹ͜͠Γ͞ͿΖʙͰ͓ૹΓ͠·͢
3 ……………… ✦ ✦
4 ……͋ʙͬʂɹখࢳͪΌΜɺ͍͍ͨͨʙʂ େมେมʙʙʙʂɹ՝ڭ͑ͯʙʙʙʂ ࡊ ✦ ✦
5 খࢳ ✦ ✦ ……ͽΌ͊ʂʂʂɹͳɺͳΜͩɺࡊͪΌΜ͔……ɻ ͲɺͲ͏ͨ͠ͷʁɹύιίϯ࣋ͬͯΔͬͯ͜ͱɺใॲཧͷ՝ʁ
6 ͦ͏ͦ͏ɺใॲཧͷतۀɺͳΜ͔αϘΓ͗ͪ͢ΌͬͨΈ͍ͨͰʙɻ ΞϓϦ࡞Δ՝ɺ2ͭΒͳ͍ͱʹͳͬͪΌ͏Μͩͬͯʙʙʙʂ ࡊ ✦ ✦
7 ͑ͬ……͑͑ʙͬʂʂʂͦɺͦΕେมʂʂʂ ୲ɺಉ͡ઌੜ͔ͩΒɺ࡞Βͳ͖Ό͍͚ͳ͍ͷAndroidͱWebΞϓϦʁ খࢳ ✦ ✦
8 ͏ʙΜɺͦ͏ʂͦΕͰͶɺAndroidͷํখࢳͪΌΜ͕ڭ͑ͯ͘Εͨɺ ͔Θ͍͍ʙὑݴޠͰॻ͍ͨΒɺྑ͍ײ͡ʙʙʙʹͰ͖ͨΜͩʙʂ ࡊ ✦ ✦
9 ͔Θ͍͍ݴޠ……͜ɺKotlinͷ͜ͱʁɹ͢ɺ͍͢͝ɺ͏ͦΜͳʹॻ͚ΔΑ͏ʹͳͬͨͷʁ খࢳ ✦ ✦
10 ͚ͩͲͶʙɺWebͷํ͕શવ͔Βͳ͍ʂɹ͔ͩΒখࢳͪΌΜɺڭ͑ͯʙʙʙɻ ࡊ ✦ ✦
11 ͏ɺ͏Μɺྑ͍͚Ͳ……ɻࡊͪΌΜɺͲ͕͔͜Βͳ͍ͷʁ Webͩͱɺ͡ΌɺJavascript͔ͳʁɹจ๏͕ɺ͔Βͳ͍ͱ͔ʁ খࢳ ✦ ✦
12 ͡Ό……͘͢Γͱʙʁɹ͑ʙʙʙɺ͔ͯ͠͠ɺ·ͨ৽͍͠ݴޠ֮͑ͳ͖Όͳͷʙʙʙʁ ΊΜͲ͘͞ʙ͍ʂɹࡊɺͥʙΜͿKotlinͰॻ͖ͨʙ͍ʂ ࡊ ✦ ✦
13 ͦɺͦΜͳΘ͕··……ɻͩɺୈҰɺࡊͪΌΜ͕ͪΌΜͱतۀग़ͯΕ……ɻ খࢳ ✦ ✦
14 ͓ʔ͍ɺখࢳͪΌʔΜɻ ಁ ✦ ✦
15 ……ͽ͐͑͑͑ʂʂʂɹ……ɺ͏ʂɹಁͪΌΜʂɹ͓ɺ͓Ͳ͔͞ͳ͍ͰΑ……ʂ খࢳ ✦ ✦
16 ͝ΊΜ͝ΊΜɻͶɺͦΕΑΓ͞ɺ՝ɺॿ͚ͯɻ ಁ ✦ ✦
17 ……͑ɺ͑͑ʂʁɹͱɺಁͪΌΜ…ʁ খࢳ ✦ ✦
18 ͏Μɻͪΐͬͱɺςετɺ͔ͬͨɻ ิशͷ՝ͰɺWebͱεϚϗͷΞϓϦ࡞ΕͬͯݴΘΕͪΌͬͯ͞ɻ ಁ ✦ ✦
19 ՝ͷఏग़ظݶɺ໌͔ͩΒɻ͜Εؒʹ߹Θͳ͍ɺͬͯࢥͬͯɻ ͔ͩΒɺ͑ʔͬͱ……ɺͳΜͱ͔ͳΜͱ͔……Έ͍ͨͳͷͰόʔͬͱΓ͍ͨɻ ಁ ✦ ✦
20 ͳɺͳΜͱ͔ͳΜͱ͔……͑ʔͬͱɺ͘ɺΫϩεϓϥοτϑΥʔϜɺͷ͜ͱ͔ͳ……ʁ খࢳ ✦ ✦
21 ͦ͏ɺͦΕͦΕɻ1ճॻ͍ͨΒɺWebεϚϗζόʔϯͬͯͰ͖ͪΌ͏ͭɻ ಁ ✦ ✦
22 ͑ʙͳʹͦΕʙʙʙʂɹ͢͝ʙʙʙ͍ʂɹ͋͠Θͤʙὑͦ͏ʂ খࢳͪΌΜɺࡊΫϩεϓϥοτϑΥʔϜͱKotlinͰɺͣʙΜͱΞϓϦ࡞Γͨʙ͍ʂ ࡊ ✦ ✦
23 ͽɺͽ͑……ɻͨɺ͔֬ʹɺ2ਓͱ͞Εͨ࣌ؒগ͚ͩ͠ɺͳΜͩΑͶ……ʁ ͦΕͳΒKotlin MultiplatformΛ͑ɺͰɺͰ͖Δ͔…ʂ খࢳ ✦ ✦
24 ͑ʙʙʙɺͦΕͬͯKotlinͰॻ͚Δͷʙʙʙʂʁ ʙʙʙʂɹࡊɺָ͘͠ͳ͖ͬͯͨʙʙʙʂ ࡊ ✦ ✦
25 ΘɺΘͨͪ͠ΐͬͱ͔͠৮ͬͯͳ͍͔Βৄ͔͘͠Βͳ͍͚Ͳɺ ͰɺͰ3ਓ͍Εɺ͖ͬͱͰ͖ΔΑͶ……ʂ খࢳ ✦ ✦
26 ;;ɺͦ͏ͩͶɻ͜ͷ3ਓͳΒɺ՝ͳΜͯ͋ͬͱ͍͏ؒͰ͠ΐɻ ͦΕ͡ΌɺͬͪΌ͓͏͔ɺ͍͍͓͑͑ʔɻ ಁ ✦ ✦
27 ͓ɺ͓ʔʂ ͓ʙʙʙʂ খࢳɾࡊ ✦ ✦
28 ✦ ✦
29 ;;ɺKotlin MultiplatformɺͳΜΘ͔ΒΜɻ ಁ ✦ ✦
30 …… ԁ߳ ✦ ✦
31 ……Ͳ͏ͨ͠ͷɺ3ਓͱɻ ԁ߳ ✦ ✦
32 ……͋ɺ·ɺԁ߳ͪΌΜʂ ࠓɺKotlin MultiplatformͰใॲཧͷ՝ͬͯΔΜ͚ͩͲɺશવਐ·ͳͬͯ͘………ɻ খࢳ ✦ ✦
33 Kotlin MultiplatformʁɹνͷใॲཧͰͦΜͳʹ͍͠՝ɺग़ΔΘ͚ͳ͍Ͱ͠ΐɻ ԁ߳ ✦ ✦
34 ͋ɺ͏͏Μɺ՝ͦͷͷɺΞϓϦ͕࡞ΕΕOKͳΜͩɻ ͰɺͰɺಁͪΌΜͱࡊͪΌΜ͕……ɺͦͷɺޙ͕ͳ͍ঢ়گΒͯ͘͠……ɻ খࢳ ✦ ✦
35 Ṥޱʔɺ͚ͨͯ͢ʔɻ ಁ ✦ ✦
36 ……͊ɻํͳ͍ΘͶɻ Kotlin MultiplatformͳΒɺଟগΘ͔Δɻૡ͍ఠΜͰઆ໌͢Δ͔ΒɺͦΕͰ͍͍ʁ ԁ߳ ✦ ✦ ❓
37 ͍ɺ͍͍ͷɺԁ߳ͪΌΜʂ খࢳ ✦ ✦
38 ؾʹ͠ͳ͍ͰɻόΠτɺͦ͜ʹస͕ͬͯΔઙ͔ΒΉ͠ΓऔΔ͔Βɻ ԁ߳ ✦ ✦
39 Kotlin MultiplatformɺKotlinͷX-PlatϑϨʔϜϫʔΫͷ͜ͱΛࢦ͢ͷɻ RNXamarinͱେ͖͘ҟͳΔͷɺʮϩδοΫͷڞ௨ԽʯʹϑΥʔΧε͍ͯ͠Δͱ͜ΖͶɻ ͦͯ͠࠷ऴతͳՌɺJVM / Native / JSͷڥຖʹҟͳΔܗࣜͰग़ྗ͞ΕΔɺ͍͍ʁ ԁ߳
✦ ✦ ,PUMJO.VMUJQMBUGPSN .11 ,PUMJOͷ91MBUϑϨʔϜϫʔΫ ʮϩδοΫͷڞ௨ԽʯͷϑΥʔΧε͕ಛ +7./BUJWF+4ίʔυͷग़ྗ͕Մೳ 3FGFSFODFLPUMJOMBOHPSHEPDTSFGFSFODFNVMUJQMBUGPSNIUNM +7.ग़ྗ +4ग़ྗ /BUJWFग़ྗ
40 ͍ʙ͍ʂɹ͡Ό͊͡Ό͊ʙɺݴޠʹґଘ͠ͳ͍ڞ௨ͷϩδοΫΛʮCommon Kotlinʯͷ ͱ͜Ζʹ͏·ʙ͘·ͱΊͯॻ͚Εʙɺࠓ·Ͱ3ճಉ͜͡ͱΛॻ͍ͯͨͷ͕ͨͬͨ1ճʹऩ·ͬͯ ͋͠ΘͤʙὑʹͳΔͬͯ͜ͱʙʙʙʁ ࡊ ✦ ✦ ,PUMJO.VMUJQMBUGPSN .11
,PUMJOͷ91MBUϑϨʔϜϫʔΫ ʮϩδοΫͷڞ௨ԽʯͷϑΥʔΧε͕ಛ +7./BUJWF+4ίʔυͷग़ྗ͕Մೳ 3FGFSFODFLPUMJOMBOHPSHEPDTSFGFSFODFNVMUJQMBUGPSNIUNM +7.ग़ྗ +4ग़ྗ /BUJWFग़ྗ
41 ͦΜͳͱ͜ΖɻҿΈࠐΈ͕ૣ͍ΘͶɺࡊɻ ͜ͷʮڞ௨෦ʯΛͰ͖Δ͚ͩCommon Kotlinʹ·ͱΊɺʮϓϥοτϑΥʔϜຖʹҧ͏෦ʯΛ Ͱ͖ΔݶΓγϯϓϧʹ࣮͢Δɻ͜Ε͕Kotlin MPPͷجຊతͳ࣮ํʹͳΔͷɻ ԁ߳ ✦ ✦ ,PUMJO.VMUJQMBUGPSN
.11 ,PUMJOͷ91MBUϑϨʔϜϫʔΫ ʮϩδοΫͷڞ௨ԽʯͷϑΥʔΧε͕ಛ +7./BUJWF+4ίʔυͷग़ྗ͕Մೳ 3FGFSFODFLPUMJOMBOHPSHEPDTSFGFSFODFNVMUJQMBUGPSNIUNM +7.ग़ྗ +4ग़ྗ /BUJWFग़ྗ
42 ࣮ࡍͷKotlin MPPϓϩδΣΫτͷσΟϨΫτϦߏ͜Μͳײ͡ɻUIͷߏஙɺ ֤ܿ͘ϓϥοτϑΥʔϜຖͷ࣮ʹͤΔͷ͕Kotlin MPPɻ͔ͩΒandroid / ios / jsϞδϡʔϧΛ ༻ҙͯ͠ɺUIʹؔ͢ΔϓϥοτϑΥʔϜݻ༗ͷίʔυΛ·ͱΊΔඞཁ͕͋Δͷɻ
ԁ߳ ✦ ✦ σΟϨΫτϦߏ ᶃBOESPJE ᶄJPT ᶅKT ᶃ ᶄ ᶅ ˞ԼઢͷϑΝΠϧ͕ ϓϥοτϑΥʔϜຖͷϝΠϯը໘
43 ϓϥοτϑΥʔϜʹґଘͤͣɺڞ௨ԽͰ͖ΔίʔυΛஔ͘ͷ͜ͷϞδϡʔϧɻ Ϟδϡʔϧ໊ʮsharedʯʮcommonsʯͱͯ͠ཧ͢Δ͜ͱ͕ଟ͍ΘͶɻ σʔλΫϥεͷએݴۀϩδοΫɺAPIαʔόʔͷϦΫΤετ·ͱΊΔ͜ͱ͕Ͱ͖ΔΘɻ ԁ߳ ✦ ✦ σΟϨΫτϦߏ ˞TIBSFEʹͨ͘͞Μ ·ͱΊͨϓϩδΣΫτྫ
BQJ"1*$MJFOUΛఆٛ EC%#PS-PDBM$BDIFͷ$MJFOUΛఆٛ RVFSZ41"32-ΫΤϦͷఆٛ SFQPTJUPSZϞσϧຖʹ$36%ϝιουΛఆٛ NPEFMσʔλΫϥεͷએݴ QSFTFOUBUJPO6*ϩδοΫͷ࣮ VUJMJUJFTศརؔ܈
44 ͰɺsharedϞδϡʔϧҎԼͷߏ͜͏ɻ ԁ߳ ✦ ✦
45 ͋……ɺɺ͔ͯ͠͠ɺ͜ͷσΟϨΫτϦߏ͕ɺ͖ͬ͞ͷಉ৺ԁͷਤͱରԠ͍ͯ͠Δͷʁ commonMainͷԼʹڞ௨ͷϩδοΫΛॻ͍ͯɺͲ͏ͯ͠ϓϥοτϑΥʔϜґଘͷίʔυΛ ॻ͔ͳ͖Ό͍͚ͳ͍࣌ɺandroidMainiosMainʹॻ͍͍͚ͯɺ͍͍ͷ͔ͳ……ʁ খࢳ ✦ ✦ +7.ग़ྗ +4ग़ྗ /BUJWFग़ྗ
ڞ௨ͷϩδοΫ "OESPJEʹґଘ͢Δίʔυ J04ʹґଘ͢Δίʔυ +4ʹґଘ͢Δίʔυ
46 ͦͷ௨ΓΑɺখࢳɻ ͲͷϓϥοτϑΥʔϜͰڞ௨ͷϩδοΫΛ࣮͍ͨ͠ͳΒɺࢥͬͨ௨ΓͷίʔυΛKotlinͰ ͦͷ··commonMainҎԼʹ࣮͢ΕऴΘΓɻGradle͕ྑ͍ײ͡ʹՌΛग़ͯ͘͠ΕΔɻ ԁ߳ ✦ ✦ // จࣈΛग़ྗ͢Δϝιου class
Greeting { fun greeting() = "Hello!" } // on Android val tv: TextView = findViewById(R.id.text_view) tv.text = Greeting().greeting() // on JS(Kotlin/JS) render(document.getElementById("root")) { h3 { +Greeting().greeting() } } // on iOS(SwiftUI) var body: some View { Text(Greeting().greeting()) } ˞֤ϓϥοτϑΥʔϜͷ)FMMP 8PSME
47 ҰํͰɺྫ͑ϩάग़ྗΈ͍ͨʹɺϓϥοτϑΥʔϜຖʹҧ͏࣮͕ෆՄܽͷ߹͋Δɻ ͦͷ࣌ɺ·ͣcommonMainʹexpectम০ࢠΛ͚ͭͯΫϥε / ϝιουΛఆٛ͢Δͷɻ ֤ϓϥοτϑΥʔϜʹ͚ͯɺΫϥε / ϝιουͷ"ଘࡏ"Λఆٛ͢ΔΠϝʔδͶɻ ԁ߳ ✦
✦ // จࣈΛग़ྗ͢Δϝιου expect object Log { fun debug(message: String) } FYQFDUम০ࢠ ˠϝιουͷதϓϥοτϑΥʔϜຖʹ ɹ࣮͢ΔͷͰ͜͜Ͱۭ
48 actual object Log { actual fun debug(message: String) {
android.util.Log.d("debug", message) } } actual object Log { actual fun debug(message: String) { println("debug: $message") } } actual object Log { actual fun debug(message: String) { console.log("debug: $message") } } ͦͯ͠ɺandroidMainiosMainͰΫϥε / ϝιουͷதΛ࣮͢Δɻ actualम০ࢠΛઌ಄ʹ͚ͭΔ͜ͱͰɺexpectͳΫϥε / ϝιουͱରԠ͚͕ͮͰ͖ΔɺͦΜͳײ͡ɻ ԁ߳ ✦ ✦ BDUVBMम০ࢠ
49 ͜͜·Ͱͬ͘͟ΓίʔυΛݟ͚ͤͨͲɺಈ࡞֬ೝલʹΑ͘ϋϚΔͷ͕ɺϏϧυεΫϦϓτपΓɻ ͔ͩΒॳΊͯ৮Δ࣌ɺKotlin Multiplatform MobileΛ͏ͱָͶɻ υΩϡϝϯτॆ࣮͍ͯ͠Δ͠ɺҰಡΜͰ͓͘ͱ͢ΜͳΓਐΉΜ͡Όͳ͍ʁ ԁ߳ ✦ ✦ ,PUMJO.VMUJQMBUGPSN.PCJMF
,.. ,PUMJO.11ͰͷϞόΠϧ։ൃΛָʹ͢Δ1MVHJO "OESPJE4UVEJP 9DPEFҎ߱ ͜ͷࢿྉͷαϯϓϧίʔυ࡞ʹ׆༻ ϦϯΫIUUQTLPUMJOMBOHPSHMQNPCJMF
50 50 ͑ɺͳΜ͔ͦ͢͝͏ɻ Ͷ͐ɺKotlin MPPͬͯ͞ɺͲ͜·Ͱڞ௨ԽͰ͖ΔΜͩΖ͏Ͷɻ ಁ ✦ ✦ ,PUMJO.VMUJQMBUGPSN.PCJMF ,..
,PUMJO.11ͰͷϞόΠϧ։ൃΛָʹ͢Δ1MVHJO "OESPJE4UVEJP 9DPEFҎ߱ ͜ͷࢿྉͷαϯϓϧίʔυ࡞ʹ׆༻ ϦϯΫIUUQTLPUMJOMBOHPSHMQNPCJMF
51 ฉ͍ͨ͜ͱ͕͋ΔͷͳΒɺʮ֎՟ܭࢉʯʮ੫ֹܭࢉʯͷڞ௨Խɻ খ͞ͳζϨڐ͞Εͳ͍ػೳ͔ͩΒಋೖޮՌߴ͍͠ɺͳ͓͔ͭඇಉظॲཧհࡏ͠ͳ͍͔Βɺ ݱߦͷKotlin MPPͰ҆৺ͯ͠ར༻Ͱ͖ΔྖҬͱݴ͑ΔͰ͠ΐ͏Ͷɻ ԁ߳ ✦ ✦
52 ͦΕ͔Βɺ࠷ۙHttpΫϥΠΞϯτͷKtorJSONγϦΞϥΠβͷkotlinx.serializationɺ ඇಉظॲཧΛѻ͏CoroutinesKotlin MPPʹରԠ͍ͯ͠Δ͠ɺࣄྫ͕গͳ͍͚ͩͰ ڞ௨ԽͰ͖Δൣғ͔ͳΓ͍Μ͡Όͳ͍ʁɹΒͳ͍͚Ͳɻ ԁ߳ ✦ ✦ ,PUMJO.11ରԠͷϥΠϒϥϦ
,UPS)UUQΫϥΠΞϯτɻ+FU#SBJOTɻ LPUMJOYTFSJBMJ[BUJPO+40/γϦΞϥΠβσγϦΞϥΠβɻ+FU#SBJOTɻ ,PUMJO$PSPVUJOFTඇಉظॲཧΠΠײ͡ʹ͢Δɻ+FU#SBJOTɻ LPJO,PEFJOґଘੑೖ %* ϥΠϒϥϦɻ ,PUFTUϢχοτςετϑϨʔϜϫʔΫɻ
53 ઌिݟͨLTձͰɺMVVMΞʔΩςΫνϟͷViewModelɺͭ·ΓUIϩδοΫ·Ͱڞ௨Խͨ͠ɺ ͳΜͯΛϓϩσϡʔαʔ͕͍͚ͯͨ͠Ͳɺ·Δʹ͕͔͔࣌ؒΓͦ͏Ͷɻ ԁ߳ ✦ ✦ ࢿྉIUUQTTQFBLFSEFDLDPNTVCSPIKFUQBDLDPNQPTFEFHBO[JUBTJBXBTFOBUPLPSP
54 ͯ͞ɺઆ໌͜ΕͰऴΘΓɻͲ͏ʁɹͰ͖ͦ͏ʁ ԁ߳ ✦ ✦
55 ʙʙʙὑɹԁ߳ઌഐɺઆ໌Θ͔Γ͢ʙ͍ʂ ͜ΕͩͬͨΒɺ՝શ෦ɺԁ߳ઌഐʹ͓ئ͍ͨ͠ํ͕ૣͦ͏ʙʙʙʂʂʂ ࡊ ✦ ✦
56 צหͯ͠……ɻখࢳɺޙཔΜͩɻ ԁ߳ ✦ ✦
57 ͽΌͬʂʂʂɹ……͋ɺ͋Γ͕ͱ͏ɺԁ߳ͪΌΜʂ ͲɺͲ͏……ʁɹਐΊΒΕͦ͏ɺಁͪΌΜ……ʁ খࢳ ✦ ✦
58 ;;;ɺେৎɺ͏ᘳɻ Kotlin Multiplatformɺશʹཧղͨ͠ɻ ಁ ✦ ✦
59 …… খࢳ ✦ ✦
60 …… ԁ߳ ✦ ✦
61 ……͊ɻख͏ɻઙɺ՝Έͤͯɻ ԁ߳ ✦ ✦
62 ͑ʙʙʙͣΔ͍ʙʙʙʂɹࡊಁઌഐʹڭ͑Δʙʙʙʂʂʂ ࡊ ✦ ✦
63 ……ͭͮ͘(?) ✦ ✦
,PUMJO.11ͱٔΕΔϊΫνϧ ΞΠϚεϋοΧιϯΦϯϥΠϯʂ ʹ͜͠Γ͞ͿΖʙ!TVCSPI@ )BWFBOJDF,PUMJO