Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
KMPを触ってみた
Search
jambo-develop-team
March 11, 2024
0
20
KMPを触ってみた
KPMを調べるにあたって
・iOSとAndroidの同機能実装時に両OS間で差分が多かった
・同じ機能を違う言語でメンテナンスする必要はあるのか?
・同じコードで両OS開発できるんじゃないか?
jambo-develop-team
March 11, 2024
Tweet
Share
More Decks by jambo-develop-team
See All by jambo-develop-team
FigmaMCP+Cursorで直感的にUIを作成してみる🎨
jambo_develop_team
0
110
株式会社ジャンボ_紹介資料
jambo_develop_team
0
7k
StoreKit2を使用した課金実装
jambo_develop_team
0
360
AppDelegateで何をすべきか
jambo_develop_team
0
560
SwiftUIのpropertyWrapperをふんわり理解する
jambo_develop_team
0
490
JetpackCompose触ってみた
jambo_develop_team
0
31
モバイルアプリの通知機能を AmazonSNSで実装する
jambo_develop_team
0
40
アジャイル入門
jambo_develop_team
0
15
0から始めるSwiftData
jambo_develop_team
0
13
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
81
Reality Check: Gamification 10 Years Later
codingconduct
0
1.9k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
61
40k
Being A Developer After 40
akosma
91
590k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
34
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
31
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
850
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.1k
Transcript
,.1Λ༻͔ͯͬͨ͜͠ͱ J04ͱ"OESPJEͷϩδοΫΛڞ௨Խͯ͠Έͨ
*OEFY Ϟνϕʔγϣϯ ࠓճͷςʔϚબఆཧ༝ʹ͍ͭͯ ·ͱΊ ͡ΊΔ ࣮ࡍͷϓϩδΣΫτʹམͱ͠ࠐΉ ,.1ͱ ͓·͚
d8IZdϞνϕʔγϣϯ d,.1Λֶ΅͏ͱߟ͖͔͚͑ͨͬd
ֶश͢ΔʹࢸͬͨܦҢ ɾJ04ͱ"OESPJEͷಉػೳ࣮࣌ʹ྆04ؒͰ͕ࠩଟ͔ͬͨ ɾಉ͡ػೳΛҧ͏ݴޠͰϝϯςφϯε͢Δඞཁ͋Δͷ͔ʁ ɾಉ͡ίʔυͰ྆04։ൃͰ͖ΔΜ͡Όͳ͍͔ʁ
ϚϧνϓϥοτϑΥʔϜͱ ϚϧνϓϥοτϑΥʔϜͱɺҟͳΔछྨͷϋ ʔυΣΞҟͳΔΦϖϨʔςΟϯάγεςϜ Ͱಉ͡Α͏ʹಈ࡞͢ΔΑ͏ʹΞϓϦέʔγϣϯ ιϑτΣΞΛઃܭ͢Δ͜ͱΛࢦ͠·͢ɻ ͦͷ໊ͷ௨ΓɺෳछͷϓϥοτϑΥʔϜʹର ԠͰ͖ΔΞϓϦέʔγϣϯͰ͢ɻ ग़య(ֶӃɹϓϩάϥϛϯά༻ޠ ग़య,PUMJO-BOHVBHF0 ff
i DJBM3FGFSFODF
ϚϧνϓϥοτϑΥʔϜͷछྨ ΫϥΠΞϯτ࣮ʹ͓͍ͯϚϧνϓϥοτϑΥʔϜԽʹύλʔϯ͋Δ 6*ͱϩδοΫΛશͯڞ༗͢Δύλʔϯ ϩδοΫͷΈΛผ04Ͱڞ༗͢Δύλʔϯ
֤ύλʔϯͷΠϝʔδ ΫϥΠΞϯτͷ6*ͱϩδοΫΛશͯڞ༗͢Δύλʔϯ ϩδοΫͷΈΛڞ༗͢Δύλʔϯ 7JFX.PEFM 7JFX.PEFM 'MVUUFSͱ3FBDU/BUJWFɺ ಠࣗͰ6*Λ࡞Ͱ͖ΔͨΊɺ ֤ٕज़ʹ·͕ͨΔ͜ͱͳ͘ɺ ࣮͢Δ͜ͱ͕Ͱ͖Δɻ ,.1ɺ֤ϓϥοτϑΥʔϜ
ಠࣗͷ6*ͷ"1*Λ༻Ͱ͖ɺ ७ਖ਼ͷ69Λ࣮ݱͰ͖Δɻ 6TF$BTF %BUB4UPSFͷϦΫΤετ %BUB4UPSFͷϦΫΤετ 6TF$BTF
d8IBUd,PUMJO.VMUJQMBUGPSNͱ d,.1ͰͰ͖Δ͜ͱd
ͦͦ,.1ͳΜͶΜ ,PUMJO.VMUJQMBUGPSN ҎԼɺ,.1 ςΫϊϩδʔɺΫϩεϓϥοτϑΥʔϜϓϩδΣΫτͷ։ൃΛ؆ૉԽ͢ΔͨΊʹઃܭ͞ Ε͍ͯ·͢ɻωΠςΟϒɾϓϩάϥϛϯάͷॊೈੑͱརΛҡ࣋͠ͳ͕ΒɺҟͳΔϓϥοτϑΥʔϜͰಉ͡ίʔυΛॻ͍ͨΓอ कͨ͠Γ͢Δ࣌ؒΛॖͰ͖Δɻ ಛʹɺ"OESPJEͱJ04ΞϓϦέʔγϣ ン ʹ͓͍ͯ
ϞόΠϧɾϓϥοτϑΥʔϜؒͰίʔυΛڞ༗͢Δ͜ͱɺ,PUMJOϚϧνϓϥοτϑΥʔϜͷओཁͳ༻ྫͰ͢ɻ ,.1Ͱɺ"OESPJEͱJ04ͷϓϩδΣΫτؒͰίʔυΛڞ༗͢ΔΫϩεϓϥοτϑΥʔϜɾϞόΠϧΞϓϦέʔγϣϯΛߏ ஙͰ͖ɺωοτϫʔΩϯάɺσʔλετϨʔδɺσʔλݕূɺੳɺܭࢉɺͦͷଞͷΞϓϦέʔγϣϯϩδοΫΛ࣮Ͱ͖Δɻ ग़ॴ ,PUMJO0 ff i DJBM3FGFSFODFIUUQTLPUMJOMBOHPSHEPDTNVMUJQMBUGPSNIUNMLPUMJONVMUJQMBUGPSNVTFDBTFT
ͦͦ,.1ͳΜͶΜ ɾ,PUMJOΛ։ൃͨ͠+FU#SBJOTࣾʹΑΓ࡞ΒΕٕͨज़ ɾ6*෦֤ϓϥοτϑΥʔϜ७ਖ਼ͷ6*ύʔπΛ༻ͯ͠։ൃͰ͖Δ ɾJ04͘͠"OESPJE PS8FC Ͱಉ༷͡ͷϩδοΫͷҰ෦͘͠શͯΛ,PUMJOݴޠͰڞ༗Ͱ͖Δ
,.174'MVUUFS3FBDU/BUJWF ,.1 'MVUUFS3FBDU/BUJWF 6* ֤ωΠςΟϒͰ࡞Ͱ͖Δ ͯ͢Λڞ༗ԽͰ͖Δ ֶशίετ ༧ଌ ߴ͘ͳ͍ ߴ͍
طଘͷ6*ͷ͍ճ͠ Ͱ͖Δ Ͱ͖ͳ͍
ͦͦ,.1ͳΜͶΜ J04ͱ"OESPJEͷϩδοΫͷڞ௨Խ ֤04ͷ७ਖ਼6*ύʔπΛ༻Ͱ͖Δ
ͦͦ,.1ͳΜͶΜ J04ͱ"OESPJEͷϩδοΫͷڞ௨Խ ֤04ͷ७ਖ਼6*ύʔπΛ༻Ͱ͖Δ Ծઆ࠷ߴͷ͍͍ͱ͜औΓͰ͖ɺϩδοΫͷڞ௨ԽʹΑΔര։ൃ͕Մೳʂʁ
,.1ΛબΒΜͩཧ༝ ɾJ04ͱ"OESPJEͷ6*ϑϨʔϜϫʔΫΛ༻࣮ͯ͠Ͱ͖Δ ɾֶशίετ͕େ෯ʹ͑ΒΕɺॳظ͔ΒߴͰ࣮Ͱ͖ͦ͏ ɾ4XJGU6*ͱ+FU1BDL$PNQPTFΛ༻͢Εɺ 6*ͷ࣮ߴԽͰ͖ͦ͏
d)PXd͡ΊΔ d,.1Ͱ۩ମతͳ࣮Λͯ͠ΈΔd
ηοτΞοϓํ๏ IUUQTXXXKFUCSBJOTDPNIFMQLPUMJONVMUJQMBUGPSNEFWNVMUJQMBUGPSNHFUUJOHTUBSUFEIUNM ηοτΞοϓʹ͍ͭͯ ηοτΞοϓʹׂ͍ͭͯѪ͠·͕͢ɺӈਤͷԼͷ 63-͔ΒɺඈΔެࣜνϡʔτϦΞϧΛࢀরͯ͠ڥ ηοτΞοϓ͍ͯͩ͘͠͞ʂ ༻͢ΔࡍɺACSFXJOTUBMMLEPDUPSAΛ λʔϛφϧͰ࣮ߦ͠ɺ։ൃڥ͕,.1։ൃʹ ద͍ͯ͠Δ͔Λஅ͔ͯ֬͠ΊΒΕ·͢ʂ
ηοτΞοϓํ๏ ηοτΞοϓ͕ྃ͢ΔͱɺӈͷਤͷΑ͏ʹ "OESPJE4UVEJP͔ΒJ04ͷγϡϛϨʔλʔΛ ϏϧυͰ͖ΔΑ͏ʹͳΓ·͢ ‼︎ গ͠ײಈ͠·ͨ͠ ͨͩ͠ɺ؆୯ʹϏϧυͰ͖ΔͷԿGSBNFXPSLΛ ༻͍ͯ͠ͳ͍͔ΒͰɺՃ͍ͯ͘͠ͱͳΔͱ ґଘؔΛ͔ͬ͠Γཧ͠ͳ͍ͱϏϧυ͕௨Βͳ
͘ͳΔͷͰɺཧղʹ͕͔͔࣌ؒͬͯ͠·͠·ͨ͠ɻ
࡞͢ΔαϯϓϧΞϓϦͷ༷ "OESPJEγϡϛϨʔλʔಈը J04γϡϛϨʔλʔಈը ϘλϯΛೋͭஔ͠ɺࠨͷϘ λϯΛλοϓ͢Δͱ ͞Εɺ ӈͷϘλϯΛλοϓ͢Δͱ ͞ΕΔ୯७ͳαϯϓϧΞϓϦ ֤ݴޠͰ࣮Λߦ͔ͬͯΒɺ
WJFX.PEFMͷڞ௨ԽΛߦ͍ ·͢ɻ ΞϓϦͷ༷ ˞7JFX.PEFMJ04Ͱ͍͏ͱ͜Ζͷ1SFTFOUFSʹࣅͨ$MBTTͷ͜ͱ
֤04σόΠεͷॳظγϡϛϨʔλʔ ॳظʮ)FMMP J04όʔδϣϯʯʮ)FMMP "OESPJEόʔδϣϯʯ ͱݴ͏දࣔͷΈͷγϯϓϧͳߏͰελʔτ͢Δ ͜ͷλΠϛϯάͰɺ·֤ͩ04ʹͷΈґଘͨ͠ϩδοΫͰɺ ϩδοΫΛڞ௨Խ͢Δ߹ɺ͔͜͜Βઌ΄Ͳड़ͨDPNNPOTIBSFͰ ڞ௨ͷWJFX.PEFMͰϩδοΫΛ࡞͍͖ͯ͠·͢ʂʂ J04ॳظը໘
"OESPJEॳظը໘
֤04ͷ6*ը໘ͷίʔυ "OESPJEଆͷ6*ͷίʔυ +FU1BDL$PNQPTF J04ଆͷ6*ͷίʔυ 4XJGU6*
֤04ͷ6*ը໘ͷίʔυ "OESPJEଆͷ6*ͷίʔυ +FU1BDL$PNQPTF J04ଆͷ6*ͷίʔυ 4XJGU6*
֤04Ͱڞ௨Խͷ֘Օॴ "OESPJEଆͷ6*ͷίʔυ J04ଆͷ6*ͷίʔυ ڞ ௨ Խ ͢ Δ Օ
ॴ
ڞ௨Խ͍͎ͯ͘͠
ϓϩδΣΫτͷ֊ʹ͍ͭͯ ϓϩδΣΫτϑΝΠϧ֊ BOESPJE"QQd J04"QQd TIBSFEd ɾ྆ϓϥοτϑΥʔϜͰڞ௨༷ͯ͢͠Δ$MBTTΛهड़͢Δ ɾJ04ͷ6*J04ͷΈͰ༻͢ΔΫϥεΛهड़͢Δ ɾJ04Ͱ༻͢ΔΞηοτΛ֨ೲͨ͠Γ͢Δ ɾ"OESPJEͷ6*"OESPJEͷΈͰ༻͢ΔΫϥεΛهड़͢Δ
ɾ"OESPJEͰ༻͢ΔΞηοτΛ֨ೲͨ͠Γ͢Δ
TIBSFEʹڞ௨ͷ7JFX.PEFM "OESPJEͱJ04ڞ௨ͷ7JFX.PEFM ڞ௨7JFX.PEFMΛJ04Ͱ༻͘͢͢͠Δ
֤04ͷ6*Ͱ7JFX.PEFMΛ༻ "OESPJEͷ6*࣮ʢϩδοΫڞ௨Խʣ J04ͷ6*࣮ʢϩδοΫڞ௨Խʣ ϩ δ ο Ϋ ͷ ڞ
௨ Խ
ڞ௨Խྃ
·ͱΊ d,.1ʹ͍ͭͯͷ૯ׅd
ڞ௨Խͯ͠Έͯײͨ͜͡ͱ ɾJ04ΤϯδχΞ͔ΒݟΔͱগֶ͠शίετ͕͋Δ ɾ,PUMJOͱ4XJGUͷݴޠ༷ʹڧ͍ΤϯδχΞʹͳΔඞཁ͋Γ ɾJ04ଆͰ,PUMJOͱ,.1ͷ༷ʹ߹ΘͤΔඞཁ͕͋Δ ɾ྆04ͷػೳࠩΛઈରʹग़ͤͳ͍ΞϓϦͷอकʹ⭕
ڞ௨Խͯ͠Έͯײͨ͜͡ͱ ʮઈରʹಋೖͨ͠ํ͕͍͍ʯͱ·Ͱ͍͔ͳ͍ͱײͨ͡ ಋೖ͢͠͞ ओ؍ қ͍͠ ಋೖ͠ʹ͍͘ ݁
͓·͚ d,.1ͷࠓޙʹ͍ͭͯd
d͓·͚d ൃදͷ࠷ॳͷํͰͨ͠ɺ6*ΛؚΉڞ௨ԽͱϩδοΫͷΈͷڞ௨Խʹ͍ͭͯ͠·͕ͨ͠ʜ $PNQPTF.VMUJQMBUGPSNʹΑΓɺ ,PUMJOͰJ04ͱ"OESPJEͷ6*Λ࡞Ͱ͖ΔΑ͏Ͱ͢ স $PNQPTF.VMUJQMBUGPSNʹ͍ͭͯ·ͨௐͯΈ·͢ $PNQPTF.VMUJQMBUGPSN IUUQTXXXKFUCSBJOTDPNMQDPNQPTFNVMUJQMBUGPSN
d'JOd
3FGFSFODF ɾ,.1ެࣜϦϑΝϨϯε IUUQTLPUMJOMBOHPSHEPDTNVMUJQMBUGPSNIUNM ɾ(ֶӃɹϓϩάϥϛϯά༻ޠ IUUQTHJNPKQHMPTTBSZEFUBJMTNVMUJ@QMBUGPSNIUNM ɾ+FU#SBJOT,PUMJO.VMUJQMBUGPSN IUUQTXXXKFUCSBJOTDPNLPUMJONVMUJQMBUGPSN ɾ,..ͷಋೖͱಘΒΕΔͷ IUUQTTQFBLFSEFDLDPNLVCPEFJOUSPEVDUJPOPGLNNBOEJUTCFOF fi
UT ɾͰΘ͔Δɺ,PUMJO.VMUJQMBUGPSN.PCJMF ,.. IUUQT[FOOEFWSPDLOBNFBSUJDMFTCBCECFDBC ɾ%..57ΞϓϦ։ൃͰ༻ͨ͠,..ʹ͍ͭͯ IUUQTJOTJEFENNDPNBSUJDMFTENNUWBQQCPPLTLNN ɾ,.1 ,PUMJO.VMUJQMBUGPSN ͷಋೖݕ౼ IUUQTRJJUBDPNTFJKJNBUTVNVSBJUFNTGFCEDFFCF ɾ,PUMJO.VMUJQMBUGPSN.PCJMFʢ,..ʣ͓Αͼ$PNQPTF.VMUJQMBUGPSNΛ ༻ͨ͠ϞόΠϧΞϓϦέʔγϣϯͷ։ൃ IUUQTCMPHLJOUPUFDIOPMPHJFTDPNQPTUTLNNDPNQPTFNVMUJQMBUGPSNIUUQTLPUMJOMBOHPSHEPDTNVMUJQMBUGPSNIUNM ɾ6TJOH,..7JFX.PEFMMJCSBSZUPTIBSF7.CFUXFFOJ04BOE"OESPJE IUUQTKPIOPSFJMMZEFWQPTUTLNNWJFXNPEFM ɾLEPDUPS ڥஅ IUUQTHJUIVCDPN,PUMJOLEPDUPS