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
プロダクト勉強会2020.06
Search
カーキ
June 26, 2020
Programming
0
150
プロダクト勉強会2020.06
個人アプリにKotlin/nativeを導入するに伴って行った依存の分離などの話
カーキ
June 26, 2020
Tweet
Share
More Decks by カーキ
See All by カーキ
好きから始まるローカルキャリア
takarkiz
0
20
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
91
TaskStackBuilderの紹介
takarkiz
0
31
Gemini API でアプリをつくりたい!
takarkiz
0
200
名古屋で勉強会を主催する3つの理由
takarkiz
0
200
GitHub Issue を利用したチケット管理
takarkiz
0
110
Gitの仕組みを理解しよう
takarkiz
0
120
Jetpack Compose でやってイイこと・ダメなこと
takarkiz
2
600
写真と動画の部分的なアクセス権について
takarkiz
0
260
Other Decks in Programming
See All in Programming
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
680
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
750
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
3
1.9k
CSC509 Lecture 03
javiergs
PRO
0
330
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.6k
クラシルを支える技術と組織
rakutek
0
190
CSC509 Lecture 02
javiergs
PRO
0
410
CSC305 Lecture 02
javiergs
PRO
1
260
止められない医療アプリ、そっと Swift 6 へ
medley
1
130
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
12k
CSC509 Lecture 05
javiergs
PRO
0
300
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
Navigating Team Friction
lara
189
15k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Mobile First: as difficult as doing things right
swwweet
224
10k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Building Adaptive Systems
keathley
43
2.8k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Context Engineering - Making Every Token Count
addyosmani
5
200
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Transcript
ΧʔΩ!ϞόΠϧΞϓϦνʔϜϓϩμΫτษڧձ݄̒ 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Ͱඇಉظॲཧ
શΫϥεʹ·͕ͨΔେࣄ