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
Composerのstabilityの話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kazuhei Arai
February 22, 2017
Programming
0
59
Composerのstabilityの話
Kazuhei Arai
February 22, 2017
Tweet
Share
More Decks by Kazuhei Arai
See All by Kazuhei Arai
CTOがプロダクトを管轄して、変わり始めたスクラム開発
kazuhei0108
0
320
Predefined Interfacesを使って便利な独自クラスを作りましょう
kazuhei0108
0
3k
LaravelとAWSで_漸進的なプロダクト開発
kazuhei0108
0
170
モックの泥沼から脱却するために、あえてDBにつないでテストしている話
kazuhei0108
4
3.4k
Laravelのエラーハンドリングをカスタマイズする
kazuhei0108
0
510
サービスコンテナの実践的な活用
kazuhei0108
1
1.2k
クラスを使ってLaravelのviewをキレイにする
kazuhei0108
1
1.7k
自分のLaravel アプリケーション設計晒す
kazuhei0108
0
89
Other Decks in Programming
See All in Programming
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
Package Management Learnings from Homebrew
mikemcquaid
0
230
CSC307 Lecture 01
javiergs
PRO
0
690
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.4k
Data-Centric Kaggle
isax1015
2
780
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
740
CSC307 Lecture 05
javiergs
PRO
0
500
SourceGeneratorのススメ
htkym
0
200
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
7
2.3k
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
今から始めるClaude Code超入門
448jp
8
8.9k
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
130
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
66
Art, The Web, and Tiny UX
lynnandtonic
304
21k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
Navigating Weather and Climate Data
rabernat
0
110
Testing 201, or: Great Expectations
jmmastey
46
8k
Statistics for Hackers
jakevdp
799
230k
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
How to Ace a Technical Interview
jacobian
281
24k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
130
Transcript
!LB[VIFJ !LB[VIFJ@@ $PNQPTFSͷTUBCJMJUZͷ 1)1#-5
!LB[VIFJ ࣗݾհ ߥҪฏ!LB[VIFJ גࣜձࣾ."Ϋϥυ ΤϯδχΞ 1)1+BWBTDSJQU4XJGU
Ͱ$PNQPTFSͷ4UBCJMJUZͷ
!LB[VIFJ ఏى w ࠓ·ͰଞਓͷϥΠϒϥϦΛΠϯετʔϧ͢Δͱ͖ʹ͔͠ ͬͯ͜ͳ͔ͬͨ w $PNQPTFSͰಠࣗͷϥΠϒϥϦʔΛJOTUBMM͍ͨ͠
!LB[VIFJ ఏى 11 "repositories": [ 12 { 13 "type": "vcs",
14 "url": "
[email protected]
:kazuhei/will-composed.git" 15 } 16 ], 17 "require": { 18 "kazuhei/will-composed": "master" 19 }, ΠϯετʔϧͰ͖ͳ͍ʂʂ
!LB[VIFJ ఏى
!LB[VIFJ ఏى 11 "repositories": [ 12 { 13 "type": "vcs",
14 "url": "
[email protected]
:kazuhei/will-composed.git" 15 } 16 ], 17 "require": { 18 "kazuhei/will-composed": "dev-master" 19 }, ΠϯετʔϧͰ͖ͨʂʂ
ͳΜͰEFW͚ͬͯͭͳ͖Ό͍͚ͳ͍ͷʁ
!LB[VIFJ $PNQPTFSͷTUBCJMJUZ w $PNQPTFSʹTUBCJMJUZͱ͍͏ߟ͑ํ͕͋Δ w $PNQPTFSͰઃఆͨ͠TUBCJMJUZΑΓ͍ͷΠϯετʔϧͰ͖ͳ͍ w $PNQPTFSͷTUBCJMJUZσϑΥϧτͰTUBCMF w $PNQPTFSͰHJUͷCSBODI։ൃ༻Ͱ͋ΓɺϦϦʔε൛CSBODIͰͳ͘UBHͳͲΛ
͏͖ w $PNQPTFSͰHJUͷCSBODI։ൃ༻ͱΈͳ͞ΕΔͷͰTUBCJMJUZ͕EFWͰ͋Γɺ TUBCMFEFWͳͷͰΠϯετʔϧͰ͖ͳ͍ w TUBCJMJUZ༷ʑͳํ๏Ͱ؇Ͱ͖Δ
!LB[VIFJ EFWΛ͚ͭΔҙຯͷ༧ w $PNQPTFSͰCSBODI։ൃ༻ͳͷͰɺͦΕ͕Θ͔ΔΑ͏ʹϢʔβʔ ʹΘ͟ͱEFWΛ͚ͭͤ͞ΔΑ͏ʹ͍ͯ͠Δʁ w EFWΛ͚ͭͤ͞Δ͜ͱʹΑΓCSBODIͷTUBCJMJUZΛ؇͍ͯ͠Δ w ͡Ό͋ଞͷํ๏ͰͰ͖ΔΜ͡Όͳ͍ͷʁ
!LB[VIFJ TUBCJMJUZΛ؇͢Δํ๏ w 4UBCJMJUZΛ؇͢Δํ๏ w NJOJNVNTUBCJMJUZΛมߋ͢Δ w NJOJNVNTUBCJMJUZlEFW w $PNQPTFSKTPOશମͰࢦఆ͞ΕΔ
w TUBCJMJUZϑϥάΛ͚ͭΔ w MJCSBSZ/BNFlW!EFW w ϥΠϒϥϦ͝ͱʹࢦఆ͞ΕΔ
ࢼͯ͠Έͨ
!LB[VIFJ NJOJOVNTUBCJMJUZͰ؇͢Δ w NJOJNVNTUBCJMJUZΛEFWʹ؇ͯ͠ɺEFWΛ֎͢ 11 "repositories": [ 12 { 13
"type": "vcs", 14 "url": "
[email protected]
:kazuhei/will-composed.git" 15 } 16 ], 17 "require": { 18 "kazuhei/will-composed": "master" 19 }, 20 "minimum-stability": "dev", ΠϯετʔϧͰ͖ͨʂʂ
!LB[VIFJ TUBCJMJUZϑϥάΛͬͯ؇͢Δ w TUBCJMJUZϑϥάΛEFWʹͯ͠ɺEFWΛ֎͢ 11 "repositories": [ 12 { 13
"type": "vcs", 14 "url": "
[email protected]
:kazuhei/will-composed.git" 15 } 16 ], 17 "require": { 18 "kazuhei/will-composed": “master@dev" 19 }, ΠϯετʔϧͰ͖ͨʂʂ
!LB[VIFJ EFW\CSBODI^ͷಛ w ௨ৗͷϥΠϒϥϦEJTU͔ΒΠϯετʔϧ͞ΕΔ w CSBODI։ൃόʔδϣϯѻ͍ͳͷͰTPVSDF͔ΒΠϯετʔϧ͞ΕΔ w EJTUιʔείʔυͷΈ͕ͩɺTPVSDFWFSTJPOίϯτϩʔϧ༻ͷίʔυ ҰॹʹΠϯετʔϧ͢Δ w
HJUͳΒHJUͱHJUJHOPSF w 0QFOTPVSDFΛݸਓͷϦϙδτϦʹϑΥʔΫͯ͠։ൃ͢Δͷʹศར
!LB[VIFJ 4UBCJMJUZͷղܾͷ͞Εํ w 4UBCJMJUZͷղܾͷ͞Εํ w TUBCJMJUZϧʔτύοέʔδͰͷΈఆٛ͢Δ͜ͱ͕Ͱ͖Δ w ͭ·ΓɺࢠͷύοέʔδͰࢦఆ͞Ε͍ͯΔTUBCJMJUZө͞Εͳ͍ w ྫ
w SPPUͷNJOJNVN@TUBCJMJUZ͕TUBCMFͩͱ#EFWNBTUFS͕ΠϯετʔϧͰ͖ͳ͍ w ղܾ͢Δʹ#ͷTUBCJMJUZSPPUͰࢦఆͯ͋͛͠Δ
!LB[VIFJ μϝͳύλʔϯ rootύοέʔδ 1 { 2 "require": { 3 "A":
"dev-master" 4 } 5 } Aύοέʔδ 1 { 2 "require": { 3 "B": "dev-master" 4 } 5 }
!LB[VIFJ ྑ͍ύλʔϯ rootύοέʔδ 1 { 2 "require": { 3 "A":
"dev-master", 4 "B": "@dev" 5 } 6 } Aύοέʔδ 1 { 2 "require": { 3 "B": "dev-master" 4 } 5 }
!LB[VIFJ ·ͱΊ w $PNQPTFSͰCSBODIࢦఆͰΠϯετʔϧ͢Δ࣌EFWΛͭ ͚Δ w EFWΛ͚ͭΔͷCSBODI։ൃόʔδϣϯͱͯ͠ѻ͏͔Β w EFW͓·͡ͳ͍͡Όͳ͍ w
TUBCJMJUZϧʔτύοέʔδͰ͔͠ࢦఆͰ͖ͳ͍ͷͰҙ
!LB[VIFJ ࢀߟ w IUUQTHFUDPNQPTFSPSH w IUUQXXXTMJEFTIBSFOFUNLLOTT w IUUQLPILJNBLJNPUPIBUFOBCMPHDPNFOUSZ