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
140
プロダクト勉強会2020.06
個人アプリにKotlin/nativeを導入するに伴って行った依存の分離などの話
カーキ
June 26, 2020
Tweet
Share
More Decks by カーキ
See All by カーキ
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
69
TaskStackBuilderの紹介
takarkiz
0
26
Gemini API でアプリをつくりたい!
takarkiz
0
170
名古屋で勉強会を主催する3つの理由
takarkiz
0
180
GitHub Issue を利用したチケット管理
takarkiz
0
89
Gitの仕組みを理解しよう
takarkiz
0
92
Jetpack Compose でやってイイこと・ダメなこと
takarkiz
2
560
写真と動画の部分的なアクセス権について
takarkiz
0
230
もっとJetpackComposeと仲良くなる
takarkiz
0
300
Other Decks in Programming
See All in Programming
Writing documentation can be fun with plugin system
okuramasafumi
0
120
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
760
ソフトウェアエンジニアの成長
masuda220
PRO
12
1.7k
ML.NETで始める機械学習
ymd65536
0
110
SpringBoot3.4の構造化ログ #kanjava
irof
2
1k
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
2
110
Linux && Docker 研修/Linux && Docker training
forrep
24
4.5k
もう僕は OpenAPI を書きたくない
sgash708
5
1.8k
Honoとフロントエンドの 型安全性について
yodaka
7
1.3k
定理証明プラットフォーム lapisla.net
abap34
1
1.8k
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
6
4k
Grafana Cloudとソラカメ
devoc
0
170
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
KATA
mclloyd
29
14k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
The Language of Interfaces
destraynor
156
24k
How to Ace a Technical Interview
jacobian
276
23k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Making Projects Easy
brettharned
116
6k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
GraphQLとの向き合い方2022年版
quramy
44
13k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
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Ͱඇಉظॲཧ
શΫϥεʹ·͕ͨΔେࣄ