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
commitを積むとは「物語を書く」ことである
Search
asumikam
October 08, 2023
5.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
commitを積むとは「物語を書く」ことである
PHPカンファレンス2024
LT発表
asumikam
October 08, 2023
More Decks by asumikam
See All by asumikam
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
660
Harnessing the Power of Mocks and Stubs in PHPUnit / #laravellivejp
asumikam
0
980
委員長たちの「コシ」
asumikam
0
440
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
580
PHPUnitの「Depends」を使うと次のテストに返り値を渡せるの、なんで?読むぞ! #phpcon_odawara
asumikam
0
67
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
3
1.1k
PHPコミュニティのあるきかた & ちいさく PHPUnitをつくってみる / Tech Challenge Party 2026
asumikam
0
150
ubuntu-latest から ubuntu-slim へ移行しよう!コスト削減うれしい~!
asumikam
0
1.3k
ちいさくPHPUnitをつくり、仕組みと拡張ポイントを探る
asumikam
3
1.2k
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
170
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
220
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Fireside Chat
paigeccino
42
3.9k
Statistics for Hackers
jakevdp
799
230k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The agentic SEO stack - context over prompts
schlessera
0
820
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
240
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
GraphQLとの向き合い方2022年版
quramy
50
15k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
840
Transcript
DPNNJUΛੵΉͱ ʮޠΛॻ͘ʯ͜ͱͰ͋Δ BTVNJLBN
͜ΜΜʂ w ͋͢Έ !BTVNJLBN w খాݪͷ/&גࣜձࣾʹۈΊਃ͢ w 8FCΞϓϦ։ൃ🙋 w
1)1(P3VCZ"845FSSBGPSN3FBDUʜ
ͳͥ ʮޠΛॻ͘ʯ ʹࢸͬͨͷ͔
ʢௐࠪதʣ ͏ʙΜɺͳΜ͔͜͜ΒΜͰ όάͬͯΔͧ ࣄ͕݅ى͖ͯΔ͔΄Γ Α͠ɺͦͷ࣌ͷDPNNJUΛ ݟͯΈΑ͏ʂ
None
ΘΒͳ͍ʂʂʂʂʂʂ ࢲͷ͕ʂʂʂ
ࢲͷ͕ΘΒͳ͍ɻ w ʮDPNNJUʯࢲͱ͋ͳͨͷܨ͕Δ෦ w ʮචऀͷ৺Λ͑ͳ͍͞ʯ w ʮܨ͕Δʯ෦Λ͍͔ʹ͏·͘ දݱ͢Δ͔ͰʮΘΔʯ͜ͱ͕૿͑Δ w
ྲྀΕத͕େࣄɺจ຺͕େࣄ ͜Εͬͯʮޠʯͩͳʁʁʁ ͕ΘΒͳ͍ྫ
ʮޠʯΛ͏·͘ॻ͘
DPNNJUͰจ຺Λ͑Δ w৽ن։ൃ wطଘվम wϨϏϡʔࢦఠ
DPNNJUͰจ຺Λ͑Δ w৽ن։ൃ wطଘվम wϨϏϡʔࢦఠ 👉ͱΛܨ͛ͯ ৽͍͠ޠΛੜΉͧʙ
🤔
🤔 ˡXJQͷঢ়ଶຊʹେࣄʁ
🤔 ˡXJQͷঢ়ଶຊʹେࣄʁ ˡม໊ͷमਖ਼ͬͯຊʹେࣄ
🤔 ˡXJQͷঢ়ଶຊʹେࣄʁ ˡม໊ͷमਖ਼ͬͯຊʹେࣄ ˡ։ൃ࣌ͷ࣮ϛεͬͯຊʹ
😃
😃 ෆཁͳจ຺Δʂ
😃 ʮ8):ʯʮ8)"5ʯΛ͑Δ ॏཁͳจ຺Γग़͢ʢཁόϥʣ
😃 ςετίʔυͦͦ ͦΕͧΕͷDPNNJUʹೖΕΔ ʮਖ਼͘͠ಈ͘ʯΛDPNNJU୯ҐͰอূ
😃
😃
😃 ্͔ΒԼʹಡΜͩ࣌ʹ ޠΈ͕ਂ͍ɻ
DPNNJUͰจ຺Λ͑Δ w৽ن։ൃ wطଘվम wϨϏϡʔࢦఠ 👉ޠͷ্ॻ͖Λ ʮԿނͨ͠ʯ͔͕େࣄ
🤔
🤔 ˡͳΜͰʁʁʁ
🤔 ˡͳΜͰʁʁʁ ˡͲΜͳʁʁʁ
🤔 ˡͳΜͰʁʁʁ ˡͲΜͳʁʁʁ ˡ͜Ε͖ͬ͞ʁʁʁ
🤔 ˡͳΜͰʁʁʁ ˡͲΜͳʁʁʁ ˡ͜Ε͖ͬ͞ʁʁʁ ˡʁʁʁʁʁ
😃
ཧ༝Λ Ωνϯͱ໌ࣔ 😃
ཧ༝Λ Ωνϯͱ໌ࣔ 😃 ϨϏϡʔमਖ਼ ໌շʹΘ͔Δ
͜͜·ͰΛ·ͱΊΔͱ
ͳͥͦͷDPNNJUΛੵΜ͔͕ͩ ಡΈखʹ͖ͬΓͱΘ͔Δ͜ͱ͕🙆 w ʮ৽ن։ൃʯͱ͕ͭͳ͕ͬͯޠʹͳ͍ͬͯΔͳʙ w ʮطଘվमʯ্ॻ͖ͨ͠ཧ༝͕͔ͬ͠Γͱॻ͔Ε͍ͯΔͳʙ w ʮϨϏϡʔमਖ਼ʯϨϏϡʔमਖ਼Ͱมߋͨ͠Μͩͳʙ
ඞཁͳ͍จ຺ͷDPNNJU͠ͳ͍ w ʮςετίʔυՃʯͱ͔ʮม໊ม͑Δʯͱ͔ʮXJQʯͱ͔ ʮόάͬͯͨͷͰमਖ਼ʯͱ͔ʮ༷͕มΘͬͨͷͰमਖ਼ʯͱ͔ w ͦͦෆཁͳจ຺ͳͷͰಠཱ͍ͯ͠Δඞཁͳ͍ w దʹ·ͱΊΑ͏ ˞ϨϏϡʔमਖ਼࣌ྫ֎
͡Ό͋͋ͳͨ ͍ͭਖ਼͘͠៉ྷͳDPNNJUΛ ੵΜͰ͍ΔΜͰ͢Ͷʁʁ
ͦΜͳ͜ͱͳ͍ͷͰ͢ʂʂʂ ៉ྷʹͳΔΑ͏ʹ ޙ͔ΒSFCBTFͯ͠·͢ʂʂ
ʘ͍͖ͩ͢ʂʂʗ ʘ͍ͭ͋Γ͕ͱ͏ʂʂʂʗ ʗśƀŹŖʘ
*OUFSBDUJWF3FCBTF👏 IUUQTXXXKFUCSBJOTDPNJEFBHVJEFUJQTJOUFSBDUJWFSFCBTF w (6*Ͱʂʂʂʂʂ w ϚδͰ؆୯ʹʂʂʂʂʂʂ w Α͍͠ΐʙʙʙʙʙʂʂʂʂʂ w ͬͯDPNNJUΛ͖Ε͍ʹͰ͖Δʂʂʂʂʂ
w େ͖ʂʂʂʂʂʂʂʂʂʂ
None
None
None
None
None
None
None
None
None
None
None
͜Ε·͡࠷ߴɻ w ܰʹDPNNJU͍ͯͬͯ͠ɺʮޙͰ៉ྷʹ͠Α͏ʯ͕Ͱ͖Δʂʂ w 1IQ4UPSNͰ៉ྷʹ͓͖͍͔ͯͨ͠Β DPNNJUͷ୯Ґจ຺͝ͱʹখ͓ͯ͘͘͞͠Ϋη͕ͭ͘ w ͪΖΜ$-*Ͱಉ͜͡ͱͰ͖ΔΜ͚ͩͲ(6*Ͱײతʹϙνϙν🐕 ͢Δ͚ͩͰ؆୯ʂʂʂDPNNJU·ͱΊͨΓDPNNJUͷॱ൪ೖΕସ͑ͨ
ΓDPNNJUNFTTBHFม͑ͨΓ͏ͳΜͰͰ͖Δਆ͔ʁޠΛ៉ྷʹ ͢ΔͨΊͷΞϨίϨ͕͜ΕʹΑͬͯ·͔ͳ͑ͯΔ࠷ߴײँ͍͖ͩ͢
͋Γ͕ͱ͏ 1IQ4UPSN🙏
·ͱΊ
w ͏·͘͏͜ͱͰʮΘΔ͜ͱ͕૿͑Δʯ͔Β w DPNNJUͰจ຺Λ͍ͰͭͷޠΛ࡞Δ w ෆཁͳจ຺DPNNJU͠ͳ͍ʂʂ w 1IQ4UPSNʮ*OUFSBDUJWF3FCBTFʯ࠷ߴͰ͢🫰ˡ݁ ͳͥࢲDPNNJUͰޠΛॻ͘ͷ͔
͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂ