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
プロダクト勉強会2020.06
Search
カーキ
June 26, 2020
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
プロダクト勉強会2020.06
個人アプリにKotlin/nativeを導入するに伴って行った依存の分離などの話
カーキ
June 26, 2020
Transcript
33 slides
ΧʔΩ!ϞόΠϧΞϓϦνʔϜϓϩμΫτษڧձ݄̒ LPUMJOOBUJWFΛೖΕΔͨΊʹ ༷ʑͳґଘΛஅͪͬͨ dΦϒδΣΫτࢦతͳd
ͷྲྀΕ ,PUMJOOBUJWFͱԿ͔ લࣝ ղܾ͢Δ ·ͱΊ
,PUMJO/BUJWFͱ
,PUMJOͱ w +FU#SBJOT͕։ൃͨ͠044ͷݴޠ w +BWBݴޠΛͬͱ؆ૉʹ҆શʹѻ͑ΔΑ͏վྑ͞Εͨݴޠ w ϞμϯͰOVMM҆શͳ+BWB w ʹ(PPHMF͕"OESPJEΞϓϦͷ։ൃݴޠͱͯ͠ೝఆ
w ʹ"OESPJEΞϓϦ։ൃͷਪݴޠͱͳΔ w ʹ,PUMJO/BUJWFͷϕʔλ൛͕ެ։
,PUMJO/BUJWFͱ w ,PUMJOϓϩάϥϜΛωΠςΟϒόΠφϦʹ ɹίϯύΠϧ͢Δٕज़ LU --7. όΠφϦϑΝΠϧ ࢀߟLPUMJOOBUJWFͳͥಈ͘ͷ͔
͕͍ͧ͜͜͢͝ʂ,PUMJO/BUJWF dωΠςΟϒόΠφϦΛੜ͢Δͱ d w ݩʑ+BWB7.্Ͱಈ࡞͢Δͱͯ͠,PUMJO͕ੜ·Εͨ w ωΠςΟϒόΠφϦʹίϯύΠϧͰ͖Δ͜ͱͰ+BWB7.ʹґଘͤ ͣʹ༷ʑͳϓϥοτϑΥʔϜͰLPUMJOΛར༻Ͱ͖Δʂ αϙʔτ͍ͯ͠ΔϓϥοτϑΥʔϜ w
J04 w .BD04 w "OESPJE w 8JOEPXT w -JOVY w 8FC"TTFNCMZ
J04ΞϓϦ͕,PUMJOͰͭ͘ΕΔʂ w J04ͷ04ʹґଘ͠ͳ͍෦ͳΒ,PUMJOͰ։ൃͰ͖Δ υϝΠϯͷίʔυΛ"OESPJEͱڞ௨ԽͰ͖Δ 7JFX 7JFX 1SFTFOUFS .PEFM ڞ௨Ϟδϡʔϧͱ͢Δ TXJGU
,PUMJO ,PUMJO طͷݴޠͰJ04 "OESPJEͷΞϓϦ͕ޮతʹ։ൃͰ͖Δ
ͳͥ,PUMJO/BUJWF͔ʁ w J04ΞϓϦϦϦʔε͍͕ͨ͠ɺ͔Β࡞Δͷ໘ɽɽɽ w ,PUMJO/BUJWFͳΒ,PUMJOͰϩδοΫΛڞ௨ԽͰ͖Δ w ڞ௨Ϟδϡʔϧͱ7JFXͱͷґଘؔͷͳͲֶͼ͕ଟͦ͏ʂ w %SPJELBJHJΞϓϦ 044
,PUMJOOBUJWF͕༻͞Ε͍ͯΔ w ,PUMJOOBUJWFʹ׳ΕΕίϯτϦϏϡʔτνϟϯεʂ ݄ʹ"OESPJEΞϓϦΛϦϦʔε
લࣝ
ΞϓϦͷઆ໌ w ΕΔ͜ͱ w Ͱ͖Δ͜ͱ νʔϜͷϢʔβʔཧ ͓ళͷ$36%ɾධՁͷ$36% νʔϜͰ͓ళΛొɾධՁ ˠਓؾͷ͓ళʹߦ͚Δ
ΞϓϦͷΞʔΩςΫνϟ .77.Λ༻ 7JFX 7JFX.PEFM .PEFM 3FNPUF %BUB -PDBM %BUB
ΞϓϦͷΞʔΩςΫνϟ .77.Λ༻ 7JFX 7JFX.PEFM .PEFM 3FQPTJUPSZ -PDBM 3FQPTJUPSZ 3FNPUF .PEFM
3FNPUF %BUB -PDBM %BUB ڞ௨ԽͰ͖ͦ͏ʂ
ΞϓϦͷΞʔΩςΫνϟ .77.Λ༻ 7JFX 7JFX.PEFM .PEFM 3FQPTJUPSZ -PDBM 3FQPTJUPSZ 3FNPUF .PEFM
ˠ"OESPJE+7.͔Βಠཱ ˠυϝΠϯ͔Β
3FQPTJUPSZ͕$POUFYUʹ ґଘ͠·͍ͬͯ͘Δ
3FQPTJUPSZ͕$POUFYUʹ ґଘ͠·͍ͬͯ͘Δ $POUFYUͱʜ ΞϓϦपΓͷڥʹΞΫηε͢ΔͨΊͷ ΠϯλʔϑΣΠε ˠ"OESPJE4%,ʹґଘ 3FQPTJUPSZ͔Β$POUFYUΛ
ղܾ͢Δ
3FQPTJUPSZͷ ը૾ΞοϓϩʔυΛผΫϥεʹ w ͓ళͷ$36%Λߦ͏4IPQ3FQPTJUPSZʹͯ ˠ"OESPJE4%,ʹґଘ ͷϑΝΠϧͷ63* ΞϓϦͷڥͷΞΫηεʹඞਢ
3FQPTJUPSZͷ ը૾ΞοϓϩʔυΛผΫϥεʹ 7JFX 7JFX.PEFM 3FQPTJUPSZ 4UPSBHF 3FQPTJUPSZ 4IPQ ը૾Ξοϓϩʔυ͚ͩ04ʹΑ͚ͬͯΔ༷ʹ͢Δ 3FQPTJUPSZ
ଞͷ ڞ௨Խ෦
3FQPTJUPSZͷʁ ϩʔΧϧอଘΛ͏·͘Γ͍ͨ w 'JSFTUPSFͰνʔϜຖʹυΩϡϝϯτΛ࡞ w νʔϜͷ*%ʹอଘˠอଘʹ$POUFYU͕ඞཁ
3FQPTJUPSZͷʁ ϩʔΧϧอଘΛ͏·͘Γ͍ͨ w 'JSFTUPSFͰνʔϜຖʹυΩϡϝϯτΛ࡞ w νʔϜͷ*%ʹอଘˠอଘʹ$POUFYU͕ඞཁ ͋Δ3FQPTJUPSZ͕ଞͷ3FQPTJUPSZΛ ࢀর͍ͯ͠ΔͷΑ͘ͳ͍ 7JFX.PEFM͕DPNQBOZ*EΛΔͷ
6TF$BTFͷಋೖ .77. $MFBO"SDIJUFDUVSF w 6TF$BTFͱ3FQPTJUPSZͰऔಘͨ͠σʔλΛѻ͍͍͢Ϟσϧʹ มׂͯ͢͠ w $MFBO"SDIJUFDUVSFͰ༻͍ΒΕΔ w 56/"(ʹ͋ΔΑ
7JFX 7JFX.PEFM 3FQPTJUPSZ ࢀߟ࣮ફΫϦʔϯΞʔΩςΫνϟ ࢀߟ.77. $MFBO"SDIJUFDUVSF
͜͜Λڞ௨Խ 6TF$BTFͷಋೖ .77. $MFBO"SDIJUFDUVSF w 6TF$BTFͱ3FQPTJUPSZͰऔಘͨ͠σʔλΛѻ͍͍͢Ϟσϧʹ มׂͯ͢͠ w $MFBO"SDIJUFDUVSFͰ༻͍ΒΕΔ w
56/"(ʹ͋ΔΑ ࢀߟ࣮ફΫϦʔϯΞʔΩςΫνϟ 7JFX 7JFX.PEFM 3FQPTJUPSZ 6TF$BTF ࢀߟ.77. $MFBO"SDIJUFDUVSF 7JFX.PEF͕Βͳ͍͍ͯ͘͜ͱΛ 6TF$BTF·ͰͰཹΊΒΕΔ
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใ͕ཉ͍͠
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใΛऔಘ
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใΛऔಘ
νʔϜͷ*%͕ཉ͍͠ ͓ళͷใ(&5
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM νʔϜͷ*%औಘ
νʔϜͷ*%͕ཉ͍͠ ͓ళͷใ(&5
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใ͕औಘͰ͖Δ
νʔϜͷ*%͕ཉ͍͠ ͓ళͷใ(&5
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใΛऔಘ
νʔϜͷ*%͕ཉ͍͠ ͓ళͷใ(&5
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใऔಘ%POF
νʔϜͷ*%͕ཉ͍͠ ͓ళͷใ(&5
6TF$BTFͷ׆༻ ͜Μͳײͩ͡Α 6TF$BTF 3FQPTJUPSZ $PNQBOZ 3FQPTJUPSZ 4IPQ 7JFX.PEFM ͓ళͷใ͕ฦΔ 7JFX.PEFM͕$PNQBOZ*Eʹ͍ͭͯ
Δ͜ͱͳ͓͘ళͷऔಘ·ͰͰ͖Δʂ
·ͱΊ
·ͱΊ ࠓճಘͨ͜ͱ w ,PUMJOOBUJWFͱଧͬͯ3FQPTJUPSZͷཧ͕Ͱ͖ͨʂ w $MFBO"SDIJUFDUVSFͷ6TF$BTFͷղ૾͕૿ͨ͠ʂ w Ұϲ݄લʹԿखΛ͚ͭͯͳ͍ঢ়ଶ͔ΒษڧձυϦϒϯͰֶΜͩ Ұ୴͜ͷํ๏Ͱ࣮͠Α͏͔Β ґଘΛΓͨ͢Ίʹ͜͜ͰΫϥεΛ͚Α͏ʂ
ͱ͍͏ࢥߟʹ
࣮·ͩΔ͜ͱͨ͘͞Μɽɽɽ w ,PUMJOOBUJWFඇରԠϥΠϒϥϦશͯ͑ͳ͍ w ඇಉظϥΠϒϥϦ%*ϥΠϒϥϦશ෦औͬସ͑Δ w +BWBʹґଘ͢Δίʔυ͕શͯ͑ͳ͍ w %BUFΫϥεผͷϥΠϒϥϦʹஔ͖͑Δ $PSPVUJOFͰඇಉظॲཧ
શΫϥεʹ·͕ͨΔେࣄ
More Decks by カーキ
See All by カーキ
Gemini Nanoを使ってみよう
takarkiz
0
50
俺のフィットネスアプリ @俺の勉強会#5
takarkiz
0
1k
好きから始まるローカルキャリア
takarkiz
0
48
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
140
TaskStackBuilderの紹介
takarkiz
0
66
Gemini API でアプリをつくりたい!
takarkiz
0
270
名古屋で勉強会を主催する3つの理由
takarkiz
0
250
GitHub Issue を利用したチケット管理
takarkiz
0
160
Gitの仕組みを理解しよう
takarkiz
0
160
Other Decks in Programming
See All in Programming
baseline으로 마이그레이션, 리팩토링 안전하게 맡기기
fornewid
1
980
[DroidKnights 2026] Workflow AX: From Auto-Documented Policies to E2E Testing
raeminkang
0
570
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
220
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
160
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.2k
Web3Dライブラリを作ってVue Custom Rendererの仕組みを理解しよう / lets learn vue custom renderer by making 3d library
drumath2237
1
130
Web Framework Benchmark Battle 2026, Any%
a_matsuda
3
3.2k
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
750
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
260
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
370
オーケストレーション記述言語 Katari
yukikurage
0
250
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2.3k
Featured
See All Featured
Statistics for Hackers
jakevdp
799
230k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Facilitating Awesome Meetings
lara
57
7.2k
A Soul's Torment
seathinner
9
3.9k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
590
Digital Ethics as a Driver of Design Innovation
axbom
PRO
2
520
Navigating Team Friction
lara
192
16k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Building the Perfect Custom Keyboard
takai
2
950
Building an army of robots
kneath
307
47k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
600
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
560