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 カーキ
好きから始まるローカルキャリア
takarkiz
0
4
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
77
TaskStackBuilderの紹介
takarkiz
0
28
Gemini API でアプリをつくりたい!
takarkiz
0
190
名古屋で勉強会を主催する3つの理由
takarkiz
0
190
GitHub Issue を利用したチケット管理
takarkiz
0
98
Gitの仕組みを理解しよう
takarkiz
0
110
Jetpack Compose でやってイイこと・ダメなこと
takarkiz
2
580
写真と動画の部分的なアクセス権について
takarkiz
0
250
Other Decks in Programming
See All in Programming
Babylon.js 8.0のアプデ情報を 軽率にキャッチアップ / catch-up-babylonjs-8
drumath2237
0
110
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
780
バリデーションライブラリ徹底比較
nayuta999999
1
450
Passkeys for Java Developers
ynojima
1
270
FastMCPでMCPサーバー/クライアントを構築してみる
ttnyt8701
2
100
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
130
Zennの運営完全に理解した #完全に理解したTalk
wadayusuke
1
140
tsconfigのオプションで変わる型世界
keisukeikeda
1
130
TypeScript を活かしてデザインシステム MCP を作る / #tskaigi_after_night
izumin5210
4
480
Perlで痩せる
yuukis
1
660
CQRS/ESのクラスとシステムフロー ~ RailsでフルスクラッチでCQRSESを組んで みたことから得た学び~
suzukimar
0
190
Agent Rules as Domain Parser
yodakeisuke
1
350
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
GitHub's CSS Performance
jonrohan
1031
460k
For a Future-Friendly Web
brad_frost
178
9.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Site-Speed That Sticks
csswizardry
7
590
Code Reviewing Like a Champion
maltzj
523
40k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
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Ͱඇಉظॲཧ
શΫϥεʹ·͕ͨΔେࣄ