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
Vueコンポーネントを複数リポ で共通化するためにやったこと
Search
RyotaKodaira
January 24, 2018
Programming
0
5.1k
Vueコンポーネントを複数リポ で共通化するためにやったこと
RyotaKodaira
January 24, 2018
Tweet
Share
More Decks by RyotaKodaira
See All by RyotaKodaira
Nuxtでオウンドメディア開発-NuxtMeetup#3
ryotakodaira
0
3k
VueでJSXを使うのはありなのか
ryotakodaira
1
4.3k
Other Decks in Programming
See All in Programming
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
180
Team operations that are not burdened by SRE
kazatohiei
1
320
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
860
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
270
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
440
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
660
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
930
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
240
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
490
生成AI時代のコンポーネントライブラリの作り方
touyou
1
240
Quand Symfony, ApiPlatform, OpenAI et LangChain s'allient pour exploiter vos PDF : de la théorie à la production…
ahmedbhs123
0
210
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
150
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
What's in a price? How to price your products and services
michaelherold
246
12k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
The Language of Interfaces
destraynor
158
25k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
BBQ
matthewcrist
89
9.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
980
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Building Applications with DynamoDB
mza
95
6.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Rails Girls Zürich Keynote
gr2m
95
14k
The Invisible Side of Design
smashingmag
301
51k
Transcript
7VFίϯϙʔωϯτΛෳϦϙ Ͱڞ௨Խ͢ΔͨΊʹͬͨ͜ͱ 4$065&3 *OD !SZPUBLPEBJSB
ࣗݾհ גࣜձࣾ4$065&3 XFCΤϯδχΞ ਓͷΤϯδχΞ μʔπ͕͖
ਓͰʑͱ࿅शͯ͠·͢ !SZPUBLPEBJSB
4$065&3ΛͬͯΔਓ
$UP#ਓࡐհαʔϏε స৬رͷਓ༑ਓΛ اۀʹհ͠ใुΛಘΒΕΔ
༗ྉ৬ۀհ ਓࡐհձࣾ ϔουϋϯλʔ ࠾༻اۀ ٻ৬ऀ հͯ͠ใुΛಘΔʹ໔ڐ͕ඞཁ ʹ
εΧλʔ ొऀ ࠾༻اۀ ٻ৬ऀ ݸਓ͕հͯ͠ใुΛड͚औΕΔ ʹ
αʔϏεߏ εΧλʔ స৬ऀ ӡӦ ࠾༻اۀ
αʔϏεߏ εΧλʔ స৬ऀ ӡӦ ࠾༻اۀ ༻ٕज़౷Ұ͞Ε͍ͯΔ -BSBWFM? ? 7VFY
αʔϏεߏ ӡӦ ࠾༻اۀ εΧλʔ స৬ऀ
αʔϏεߏ εΧλʔ స৬ऀ ӡӦ ࠾༻اۀ
αʔϏεߏ εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ
ࠓճαʔϏεͰ༻ ͞ΕΔʮٻਓථʯʹ͍ͭͯ
ػೳஔ εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථͷ࡞ɾฤू ٻਓථͷӾཡ
ٻਓථͷݕࡧ ٻਓථͷӾཡ ٻਓථͷ࡞ɾฤू ٻਓථͷݕࡧ ٻਓථͷӾཡ
ػೳஔ εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථͷ࡞ɾฤू ٻਓථͷӾཡ
ٻਓථͷݕࡧ ٻਓථͷӾཡ ٻਓථͷ࡞ɾฤू ٻਓථͷݕࡧ ٻਓථͷӾཡ ઌʹݴ͓ͬͯ͘ͱɺɺɺ ػೳಉ͕ͩ͡ίʔυผʑ
ɹʮٻਓථͷ߲ΛՃ͍ͨ͠ʂʯ ɹʮ0,ʂͰͪΐͬͱ࣌ؒΛ͏Ͷʯ
ɹʮٻਓථͷ߲ΛՃ͍ͨ͠ʂʯ ɹʮ0,ʂͰͪΐͬͱ࣌ؒΛ͏Ͷʯ ιʔε͕ڞ௨Խ͞Ε͍ͯͳͷͰؔ ͢ΔશͯͷαʔϏεΛมߋ͠ͳ͍ͱ ͍͚ͳ͍ ຊ൪%#ʹରͯ͠ϚΠάϨʔγϣϯ ࣮ߦ͠ͳ͖Ό
σʔλߏ KPCTςʔϒϧ JE DSFBUFE@BU UJUMF
DPOUFOU@ DPOUFOU@ DPOUFOU@ σʔλΛԣ࣋ͪͰ อଘ͍ͯ͠ΔͨΊ ΧϥϜΛՃ͢Δ ඞཁ͕͋Δ
σʔλߏ KPCTςʔϒϧ JE DSFBUFE@BU UJUMF
DPOUFOU@ DPOUFOU@ DPOUFOU@ DPOUFOU@ σʔλΛॎ࣋ͪͰ อଘ͍ͯ͠ΔͨΊ ΧϥϜΛՃ͢Δ ඞཁ͕͋Δ ϚΠάϨʔγϣϯ
σʔλΛॎ࣋ͪʹͯ͠ཧը໘͔Β߲ ͷՃΛͰ͖ͨ΄͏͕ྑͦ͞͏ʂʂ
σʔλߏ *E KPC@JE LFZ WBMVF DPOUFOU@ ʮDPOUFOU@ʯͷ༰
DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ *E DSFBUFE@BU UJUMF 4$065&3Λ։ൃ͢ΔΤϯδχΞͷืू KPCT KPC@EFUBJMT
σʔλߏ *E DSFBUFE@BU UJUMF 4$065&3Λ։ൃ͢ΔΤϯδχΞͷืू KPCT *E
KPC@JE LFZ WBMVF DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ KPC@EFUBJMT KPC@EFUBJMTLFZͷछྨΛ૿͢ ٻਓථͷ߲Λ૿͢ %#ߏΛҙࣝ͢Δ͜ͱͳ͘มߋ͕ग़དྷΔΑ͏ʹ
σʔλߏ *E KPC@JE ,FZ 7BMVF DPOUFOU@ ʮDPOUFOU@ʯͷ༰
DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ DPOUFOU@ ʮDPOUFOU@ʯͷ༰ *E DSFBUFE@BU UJUMF 4$065&3Λ։ൃ͢ΔΤϯδχΞͷืू KPCT KPC@EFUBJMT KPCTςʔϒϧͷ߲࠷খݶʹͯ͠ ٻਓථͷίϯςϯπ ผͷςʔϒϧʹอଘ͢Δ
͜ΕͰσʔλߏมߋʹରԠ͘͢͠ ͳͬͨ ࣍ίʔυଆͷ͓ ϑϩϯτΤϯυʹযΛ͓ͯͯ͠·͢
ϑϩϯτߏ εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථ ύοέʔδ ελΠϧΨΠυ ίϯϙʔωϯτू
ϑϩϯτߏ εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථ ύοέʔδ ελΠϧΨΠυ ίϯϙʔωϯτू
ࣾͰࣗ࡞͍ͯ͠Δ 7VFίϯϙʔωϯτू
Α͘ΘΕΔίϯϙʔωϯτΛ ࣄલʹ༻ҙ͓͖ͯ͠ɺ TUPSZCPPLͰ֬ೝग़དྷΔΑ͏ʹ͍ͯ͠Δ
TUPSZCPPLͱ
TUPSZCPPLͱ ίϯϙʔωϯτ୯ҐͰ࣮ߦ͢Δ͜ͱͷ Ͱ͖ΔαϯυϘοΫεڥ ͲΜͳίϯϙʔωϯτ͕ϓϩδΣΫτʹ ଘࡏ͍ͯ͠Δͷ͔Λ֬ೝ͢Δ͜ͱ͕Ͱ͖Δ
ϑϩϯτߏ ελΠϧΨΠυ ίϯϙʔωϯτू εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථ ύοέʔδ
֤ϓϩδΣΫτͰ ZBSOBEE
ٻਓථύοέʔδͷ४උ 7VFϓϩδΣΫτΛ༻ҙ͢Δ AWVFDMJAͰ࡞͍ͯ͠Βͳ͍ͷΛফ͢ͷ͕͓͢͢Ί TUPSZCPPLͷಋೖ TUPSZCPPLͰ։ൃ͢Δ͜ͱʹΑͬͯΞϓϦέʔγϣϯଆͰ
ஞҰڍಈΛ֬ೝ͠ͳͯ͘ྑ͍ͨΊ։ൃޮ61 ޙʑଞͷΤϯδχΞ͕ίϯϙʔωϯτΛར༻͢Δͱ͖ͷͨ Ίʹίϯϙʔωϯτͷ༷Λ͢͜ͱ͕Ͱ͖Δ
QBDLBHFKTPO ࠷ॳʹݺΕΔ εΫϦϓτΛࢦఆ
JOEFYKT ίϯϙʔωϯτΛ ొ͢Δ
ΞϓϦέʔγϣϯଆ ٻਓύοέʔδΛ ZBSOBEE
ΞϓϦέʔγϣϯଆ ٻਓύοέʔδΛ Πϯϙʔτ Πϯϙʔτͨ͠ ίϯϙʔωϯτΛొ
ΞϓϦέʔγϣϯଆ ίϯϙʔωϯτΛ ݺͼग़͢
ϑϩϯτߏ ελΠϧΨΠυ ίϯϙʔωϯτू εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථ ύοέʔδ
εΧλʔ స৬ऀ ࠾༻اۀ ӡӦ ٻਓථ ύοέʔδ ϑϩϯτߏ ελΠϧΨΠυ ίϯϙʔωϯτू
ϓϩδΣΫτຖʹҧ͏Λઃఆ͍ͨ͠
ΞϓϦέʔγϣϯଆ ୈҾʹΦϒδΣΫτΛ ೖΕͯઃఆΛྲྀ͢
ύοέʔδJOEFYKT ୈҾʹΞϓϦέʔγϣϯଆͰ ઃఆ͕ͨ͠ೖͬͯ͘Δ
·ͱΊ 7VFϓϩδΣΫτͰTUPSZCPPLΛ͏͜ͱͰίϯϙʔωϯτ ୯ҐͰͷ։ൃ͕͍ͩͿޮతʹͳΔ ઃఆϑΝΠϧͳͲΛ༻ҙͯ͠ΔͱΞϓϦέʔγϣϯಛ༗ͷ ઃఆΛಡΈࠐΉ͜ͱ͕ग़དྷΔ ͜ΕͰมߋ͕͋ͬͯجຊతʹ͜ͷύοέʔδͷΈΛมߋ
͢Εྑ͍
͍͞͝ʹ 7VFKTΛͬͯ։ൃΛ͍ͨ͠ ϑϩϯτΤϯδχΞΛืू͍ͯ͠·͢ʂ