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
KMMを使って感じたPros/Cons / Pros/Cons experienced usi...
Search
Masatoshi Kubode
September 19, 2021
Programming
1
2.5k
KMMを使って感じたPros/Cons / Pros/Cons experienced using KMM
iOSDC Japan 2021 スポンサーセッションでShota Kashiharaと一緒に話した資料です。
https://iosdc.jp/2021/
Masatoshi Kubode
September 19, 2021
Tweet
Share
More Decks by Masatoshi Kubode
See All by Masatoshi Kubode
ウォンテッドリーの「ココロオドル」モバイル開発 / Wantedly's "kokoro odoru" mobile development
kubode
2
870
Firebase Dynamic Linksの代替手段を自作する / Create your own Firebase Dynamic Links alternative
kubode
0
360
技術を根付かせる / How to make technology take root
kubode
1
340
WantedlyでのKotlin Multiplatformの導入と課題 / Kotlin Multiplatform Implementation and Challenges at Wantedly
kubode
0
430
Google Play Consoleデベロッパー アカウントの確認 / Verifying your Play Console developer account
kubode
1
1.2k
Make your Android app into Multiplatform app
kubode
0
150
ウォンテッドリーにおけるモバイルアプリ開発 / iOSDC Japan 2024 Sponsor Session
kubode
1
1k
Jetpack ComposeのBottomSheetとの戦い / Fight with BottomSheet of Jetpack Compose
kubode
0
770
Mobile Chapterが目指すところと技術 / Vision and Technology of Mobile Chapter at Wantedly
kubode
0
350
Other Decks in Programming
See All in Programming
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
110
iOSアプリ開発もLLMで自動運転する
hiragram
6
2.3k
〜可視化からアクセス制御まで〜 BigQuery×Looker Studioで コスト管理とデータソース認証制御する方法
cuebic9bic
3
320
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
200
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
270
Passkeys for Java Developers
ynojima
2
830
GoのGenericsによるslice操作との付き合い方
syumai
0
160
Using AI Tools Around Software Development
inouehi
0
1.1k
実践ArchUnit ~実例による検証パターンの紹介~
ogiwarat
2
240
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
120
PT AI без купюр
v0lka
0
220
プロダクト開発でも使おう 関数のオーバーロード
yoiwamoto
0
140
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
GitHub's CSS Performance
jonrohan
1031
460k
The Cult of Friendly URLs
andyhume
79
6.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Docker and Python
trallard
44
3.4k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
Automating Front-end Workflow
addyosmani
1370
200k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
120
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
890
The Pragmatic Product Professional
lauravandoore
35
6.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Music & Morning Musume
bryan
46
6.6k
Transcript
©2021 Wantedly, Inc. ,..Λͬͯײͨ͡1SPT$POT J04%$ Wantedly, Inc. Kubode & Kashihara
©2021 Wantedly, Inc. ࣗݾհ
©2021 Wantedly, Inc. w ,..ͱͳʹ͔ w 8BOUFEMZͰͷಋೖܦҢ w 8BOUFEMZͷ࣮ྫΛհ "HFOEB
©2021 Wantedly, Inc. ,..ͱͳʹ͔
©2021 Wantedly, Inc. w ,PUMJO.VMUJQMBUGPSN.PCJMF ,.. w ϏδωεϩδοΫΛڞ௨Խ w
6*֤ϓϥοτϑΥʔϜͰ࣮ ,..ͱ https://kotlinlang.org/lp/mobile/
©2021 Wantedly, Inc. ,PUMJOͷڞ௨ίʔυ͕J04"OESPJEͰ͘͠ಈ͘ ,PUMJOͷڞ௨ίʔυΛॻ͘ 👉ϓϥοτϑΥʔϜʹ࠷దͳܗʹม 👉ͦΕΛ֤ϓϥοτϑΥʔϜͰར༻͢Δ ,..ͱ "OESPJE ,..ͷڞ௨ίʔυ
J04 GSBNFXPSL$PDPB1PET 4XJGU1BDLBHF.BOBHFS 0CKFDUJWF$4XJGU ޓόΠφϦ 6*,JU4XJGU6* +7.ޓόΠφϦ "OESPJE7JFX +FUQBDL$PNQPTF (SBEMF.BWFO
©2021 Wantedly, Inc. ,..͚ͩͰJ04"OESPJEΞϓϦΛ࡞Εͳ͍ 6*ߏஙํ๏ϓϥοτϑΥʔϜͰҟͳΔ 👉ҟͳΔͷΛڞ௨ԽͰ͖ͳ͍ 👉6*ϓϥοτϑΥʔϜʹ࠷దͳํ๏ͰߏஙͰ͖Δ ,..ͱ
©2021 Wantedly, Inc. 8BOUFEMZͰͷಋೖܦҢ
©2021 Wantedly, Inc. ෛ࠴Խͨ͠3FBDU/BUJWF w ʹJ04ΞϓϦͷϦχϡʔΞϧΛਐΊ͍ͯͨ w ϦχϡʔΞϧதͷάϩʔεΛ8FC'SPOUΤϯδχΞ͕3FBDU/BUJWFͰ͍ͬͯͨ w ϦχϡʔΞϧޙ෦తʹ3FBDU/BUJWF͕Δ
w 8FC'SPOUΤϯδχΞ͕ຊདྷͷ։ൃʹΔͱϝϯςφʔ͕ෆࡏʹ w ෛ࠴Խɺ9DPEFΞοϓσʔτͳͲͷোʹͳͬͯ͘Δ w 3FBDU/BUJWFΛऔΓআ͘͜ͱʹ ಋೖܦҢ
©2021 Wantedly, Inc. ϏδωεϩδοΫڞ௨Խͷ՝ w J04"OESPJEͰඍົʹڍಈ͕ҧ͏ w ࣮࿙ΕɺΩϟογϡɺΤϥʔ࣌ͷڍಈ w εΩʔϚఆٛ࿙ΕʹΑΔόά
w Ͳͬͪͷ࣮͕ਖ਼͍͔͠Θ͔Βͳ͍😱 w J04"OESPJEͲͪΒ࣮ɾϨϏϡʔ͢Δίετ ಋೖܦҢ
©2021 Wantedly, Inc. ,..ͷݕ౼ɺಋೖ w 1P$ͷ࣮ࢪ w ࢼݧతʹ"OESPJEಋೖ w νʔϜͰ߹ҙΛऔͬͯJ04ʹಋೖ͢Δஅ
ಋೖܦҢ
©2021 Wantedly, Inc. 8BOUFEMZͰͷಋೖྫ ͔͜͜Β!LBTIJIBSBSBSB͕͓ૹΓ͠·͢ʂ
©2021 Wantedly, Inc. ϨϙδτϦઃܭϥΠϒϥϦํ๏Λߟ͑Δ J04͔Βݟͨ,..ͷϥΠϒϥϦ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
ࠔͬͨ 8BOUFEMZͰͷಋೖྫ
©2021 Wantedly, Inc. ϨϙδτϦઃܭΛߟ͑Δ ,..ϥΠϒϥϦͱJ04ΞϓϦɾ"OESPJEΞϓϦͷͭϞδϡʔϧΛ ϨϙδτϦϨϕϧͰͲͷΑ͏ʹׂ͢Δ͔ʁ ީิ ͭͷϨϙδτϦʹू͢Δ
Ϟδϡʔϧ͝ͱʹϨϙδτϦΛׂ͢Δ 8BOUFEMZͰͷಋೖྫ
©2021 Wantedly, Inc. ϨϙδτϦઃܭΛߟ͑Δ ,..ϥΠϒϥϦͱJ04ΞϓϦɾ"OESPJEΞϓϦͷͭϞδϡʔϧΛ ϨϙδτϦϨϕϧͰͲͷΑ͏ʹׂ͢Δ͔ʁ ީิ ͭͷϨϙδτϦʹू͢Δ
Ϟδϡʔϧ͝ͱʹϨϙδτϦΛׂ͢Δ✅ 8BOUFEMZͰͷಋೖྫ
©2021 Wantedly, Inc. ϥΠϒϥϦํ๏Λߟ͑Δ ީิ $PDPB1PETͰϏϧυࡁΈͷGSBNFXPSLΛ͢Δ HJUTVCNPEVMFͰιʔείʔυΛڞ༗͠ɺར༻ଆͰϏϧυ͢Δ 8BOUFEMZͰͷಋೖྫ
©2021 Wantedly, Inc. ϥΠϒϥϦํ๏Λߟ͑Δ ީิ $PDPB1PETͰϏϧυࡁΈͷGSBNFXPSLΛ͢Δ HJUTVCNPEVMFͰιʔείʔυΛڞ༗͠ɺར༻ଆͰϏϧυ͢Δ✅ 8BOUFEMZͰͷಋೖྫ
©2021 Wantedly, Inc. ϥΠϒϥϦํ๏Λߟ͑Δ HJUTVCNPEVMFͰιʔείʔυΛڞ༗͠ɺར༻ଆͰϏϧυ͢Δ✅ ཧ༝ ॳظίετ͕͍ ࣌·ٕͩज़ݕূͷॳظஈ֊Ͱ͘ΞϓϦ্Ͱಈ͔͢͜ͱ͕ॏཁͩͬͨ
ϥΠϒϥϦͷΠϯλϑΣʔε͕ະͰසൟʹखΛೖΕ͍ͯ͘ϑΣʔζͰஅ͕ ແ͍΄͏͕͘։ൃͰ͖ͨ ޙ͔ΒHJUTVCNPEVMFΛ$PDPB1PETʹҠߦ͢Δ͜ͱ͕Մೳͩͬͨ 8BOUFEMZͰͷಋೖྫ
©2021 Wantedly, Inc. J04͔Βݟͨ,..ͷϥΠϒϥϦ
©2021 Wantedly, Inc. ,PUMJOͰॻ͍ͨίʔυΛ4XJGUͰར༻͢Δ ,PUMJOͰॻ͍ͨίʔυ͕4XJGU͔ΒͲ͏ݟ͑Δͷ͔ɺ ಉظॲཧɾඇಉظॲཧͷͭΛྫʹ؆୯ʹհ J04͔Βݟͨ,..ͷϥΠϒϥϦ
©2021 Wantedly, Inc. ಉظॲཧ J04͔Βݟͨ,..ͷϥΠϒϥϦ
©2021 Wantedly, Inc. ඇಉظॲཧ J04͔Βݟͨ,..ͷϥΠϒϥϦ
©2021 Wantedly, Inc. 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 8BOUFEMZ7JTJUΞϓϦ ,..Λ6*Ҏ֎ͷϨΠϠʔͰར༻ 7JFX04ຖͷωΠςΟϒͳ࣮ J046*,JUΛ༻͍ͯ͠·͢ɻ
6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ Ҿ༻: Wantedly Visitʹ͓͚ΔKotlin Multiplatformͷಋೖͱ࣮ https://www.wantedly.com/companies/wantedly/post_articles/300999 ,..Λ6*Ҏ֎ͷϨΠϠʔͰར༻ 7JFX04ຖͷωΠςΟϒͳ࣮ J046*,JUΛ༻͍ͯ͠·͢ɻ 3FBDUPS,JUͱ͍͏ϥΠϒϥϦΛͬͨ 'MVYϥΠΫͳϑϨʔϜϫʔΫΛ࠾༻
©2021 Wantedly, Inc. 8BOUFEMZ7JTJUΞϓϦ ,..Λ6*Ҏ֎ͷϨΠϠʔͰར༻ 7JFX04ຖͷωΠςΟϒͳ࣮ J046*,JUΛ༻͍ͯ͠·͢ɻ
3FBDUPS,JUͱ͍͏ϥΠϒϥϦΛͬͨ 'MVYϥΠΫͳϑϨʔϜϫʔΫΛ࠾༻ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ Ҿ༻: https://github.com/ReactorKit/ReactorKit
©2021 Wantedly, Inc. 6*ͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 6*ͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 6*ͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 6*ͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 6*ͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 6*ͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 3FBDUPSͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. 3FBDUPSͷ࣮ྫ 6*Ҏ֎ͷϨΠϠʔͷڞ௨Խ
©2021 Wantedly, Inc. ࠔͬͨ
©2021 Wantedly, Inc. J04ଆͰࠔͬͨ JOUFSGBDFͷܕύϥϝʔλ͕ࣦΘΕΔ ,PUMJOͷίϧʔνϯͷओཁͳίϯϙʔωϯτͷͭͰ͋Δ'MPX5Ͱ͕͢ɺ J04͔Βͷར༻ͷࡍʹܕύϥϝʔλ͕ࣦΘΕͯ"OZ Λฦ͢Α͏ʹͳ͍ͬͯ·ͨ͠ ˞'MPX5͜͜Ͱͬ͘͟Γݴ͏ͱ$PNCJOFͷ1VCMJTIFS 3Y4XJGUͷ0CTFSWBCMF5
ͷΑ͏ͳͷɺͱ͍͏ཧղͰ0,Ͱ͢
©2021 Wantedly, Inc. JOUFSGBDF QSPUPDPM ͷܕύϥϝʔλ͕ࣦΘΕΔ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. JOUFSGBDF QSPUPDPM ͷܕύϥϝʔλ͕ࣦΘΕΔ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. JOUFSGBDF QSPUPDPM ͷܕύϥϝʔλ͕ࣦΘΕΔ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. JOUFSGBDF QSPUPDPM ͷܕύϥϝʔλ͕ࣦΘΕΔ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. JOUFSGBDF QSPUPDPM ͷܕύϥϝʔλ͕ࣦΘΕΔ J04ଆͰࠔͬͨ ,..Ͱ࡞ΒΕͨJ04͚ϥΠϒϥϦ0CKFDUJWF$ϥΠϒϥϦʹͳΔ
0CKFDUJWF$ ͷ QSPUPDPM ʹܕύϥϝʔλ͕ѻ͑ͳ͍ͨΊ 'MPX5 ͷܕύϥ ϝʔλ͕JE@/VMMBCMFܕ 0QUJPOBM"OZܕ ʹͳͬͯ͠·͍ͬͯΔ
©2021 Wantedly, Inc. JOUFSGBDF QSPUPDPM ͷܕύϥϝʔλ͕ࣦΘΕΔ J04ଆͰࠔͬͨ ,..Ͱ࡞ΒΕͨJ04͚ϥΠϒϥϦ0CKFDUJWF$ϥΠϒϥϦʹͳΔ
0CKFDUJWF$ ͷ QSPUPDPM ʹܕύϥϝʔλ͕ѻ͑ͳ͍ͨΊ 'MPX5 ͷܕύϥ ϝʔλ͕JE@/VMMBCMFܕ 0QUJPOBM"OZܕ ʹͳͬͯ͠·͍ͬͯΔ
©2021 Wantedly, Inc. J04ଆͰࠔͬͨ ճආࡦ Α͘ΒΕΔํ๏ͭ "OZ Λར༻ଆͰҙͷܕʹΩϟετ͢Δ
,..ଆͰ'MPX5Ͱͳ͘ҙͷܕΛฦ͢ΫϩʔδϟΛ༻ҙ͢Δ
©2021 Wantedly, Inc. J04ଆͰࠔͬͨ ճආࡦ Α͘ΒΕΔํ๏ͭ "OZ Λࣗ໌ͳҙͷܕʹΩϟετ͢Δ
,..ଆͰ'MPX5Ͱͳ͘ҙͷܕΛฦ͢ΫϩʔδϟΛ༻ҙ͢Δ✅
©2021 Wantedly, Inc. ·ͣɺ,PUMJOͰ'MPX͔Β4UBUFΛฦ͢Ϋϩʔδϟʹม͢ΔॲཧΛॻ͖·͢ɻ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. ·ͣɺ,PUMJOͰ'MPX͔Β4UBUFΛฦ͢Ϋϩʔδϟʹม͢ΔॲཧΛॻ͖·͢ɻ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. ͜ͷΫϩʔδϟΛJ04ଆͰར༻͢Δͱɺ0QUJPOBM"OZܕͰͳ͘ݩʑͷܕ͕͍ͨ ͕औಘͰ͖·͢ɻ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. ΫϩʔδϟΛ0CTFSWBCMFʹมͯ͠༻Ͱ͖ΔΑ͏ʹ͍ͯ͠·͢ɻ J04ଆͰࠔͬͨ
©2021 Wantedly, Inc. ·ͱΊ
©2021 Wantedly, Inc. 1SPT • UI࣮ʹूதͰ͖Δ • ඞવతʹΛҙࣝͨ͠ઃܭʹͳΔ $POT •
Swiftͷޓੑʹ՝͕͋Γϥούʔ͕ඞཁ • KotlinGradleͱ͍ͬͨผͷ͕ࣝඞཁ ·ͱΊ
©2021 Wantedly, Inc. ,..Λಋೖ͢Δࡍʹݕ౼͢Δ͖͜ͱ w νʔϜϝϯόʔ͕,PUMJOʹ׳Ε͍ͯΔ͔ w J04ͱ"OESPJEͷڑ͍͔ۙ w ϓϩμΫτͱͯ͠߹ҙΛͱͬͯਐΊΒΕΔ͔
νʔϜʹಋೖ͢ΔެࣜΨΠυ͋ΔͷͰࢀߟʹ IUUQTLPUMJOMBOHPSHEPDTNPCJMFJOUSPEVDFZPVSUFBNUPLNNIUNM ·ͱΊ
©2021 Wantedly, Inc. એ
©2021 Wantedly, Inc. IUUQTEPDTXBOUFEMZEFW
ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ©2021 Wantedly, Inc. 8FBSFIJSJOH
ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ©2021 Wantedly, Inc. 5IBOLT