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
テストを助けに使って設計を改善しよう~リファクタリングことはじめ~
Search
Hiromi Hishida
September 21, 2019
Programming
2
1.1k
テストを助けに使って設計を改善しよう~リファクタリングことはじめ~
PHPカンファレンス北海道2019 cfp落選したのでアンカンファレンスで喋ります。
Hiromi Hishida
September 21, 2019
Tweet
Share
More Decks by Hiromi Hishida
See All by Hiromi Hishida
サービスクラスのありがたみを発見したときの思い出 #phpcon_odawara
77web
6
720
「それはhowなんよ〜」のガイドライン #orestudy
77web
9
2.6k
空が堕ち、大地が割れ、海が涸れた日~もしも愛用しているフレームワークが開発停止したら?~ #phperkaigi 2025
77web
2
1.2k
Beyond ORM
77web
11
1.9k
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
8
8.4k
DoctrineとPostgreSQLの便利な機能、どっちも諦めたくない!
77web
0
230
すばやく実装するための戦略とテクニック2024 / speed is power! 2024 #techramen24conf #shoyu
77web
9
4.8k
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
980
Doctrine ORMでValue Objectを扱う方法4選 #phpstudy / 4 ways to handle Value Objects with Doctrine ORM
77web
4
330
Other Decks in Programming
See All in Programming
Global Azure 2025 @ Kansai / Hyperlight
kosmosebi
0
140
はじめてのPDFKit.pdf
shomakato
0
100
20250429 - CNTUG Meetup #67 / DevOps Taiwan Meetup #69 - Deep Dive into Tetragon: Building Runtime Security and Observability with eBPF
tico88612
0
170
実践Webフロントパフォーマンスチューニング
cp20
45
10k
インプロセスQAにおいて大事にしていること / In-process QA Meetup
medley
0
160
20250426 GDGoC 合同新歓 - GDGoC のススメ
getty708
0
110
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
6
1.5k
ぽちぽち選択するだけでOSSを読めるVSCode拡張機能
ymbigo
14
6.2k
Jakarta EE Meets AI
ivargrimstad
0
860
By the way Google Cloud Next 2025に行ってみてどうだった
ymd65536
0
120
Golangci-lint v2爆誕: 君たちはどうすべきか
logica0419
1
250
AWS Summit Hong Kong 2025: Reinventing Programming - How AI Transforms Our Enterprise Coding Approach
dwchiang
0
130
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Gamification - CAS2011
davidbonilla
81
5.3k
GraphQLとの向き合い方2022年版
quramy
46
14k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
How to train your dragon (web standard)
notwaldorf
91
6k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Building Adaptive Systems
keathley
41
2.5k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
560
Transcript
ςετΛॿ͚ʹͬͯ ઃܭΛվળ͠Α͏ ʙϦϑΝΫλϦϯά͜ͱ͡Ίʙ QIQDPOEPΞϯΧϯϑΝϨϯε!XFC
ɾ!XFC ɾϑϦʔϥϯεʢ͙Β͍ʣˠΧϧςοτίϛϡχέʔγϣϯζʢʣ ɾࡳຈੜ·Εࡳຈҭͪʢࡀ·Ͱʣɺ໊ݹࡏॅ ɾࣇͷ ɾຊ4ZNGPOZϢʔβʔձ ɾ$PEFS%PKP໊ݹॳνϟϯϐΦϯʢॾࣄ͋ͬͯҾୀʜʣ ɾ*—1)1
ɾӡ༻ܕࠂۀքΛϗϫΠτʹ͢ΔΈΛ࡞ͬͯ·͢ ɾؒืूதʂʢϑϧϦϞʔτɺύʔτλΠϜɺͪΖΜϑϧ λΠϜਖ਼ࣾһܴʣ
օ͞Μςετίʔυॻ͍ͯ·͢ΑͶʁ
ςετΛॻ͘ͷͳΜͷͨ Ίʁ
ςετΛॻ͘ͷͳΜͷͨ Ίʁ w όά༧ w ༷มߋʹڧ͘͢ΔͨΊ
ςετॻ͘ͷͭΒ͍ͳʔ໘ͩͳʔͬ ͯࢥͬͯ·ͤΜ͔ʁ
ςετ͠ʹ͍͘Ϋϥεʹग़ձͬͨΒɺ ઃܭΛݟͦ͏
ࠓͦͷͨΊʹ͑ΔςΫχοΫΛ ͭհ͠·͢ʂ
ςετ͠ʹ͍͘Ϋϥεྫ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ ଞͷΫϥεΛOFXͯ͠Δ TUBUJDϝιουΛ͍ͬͯΔ ςετ͕$POWFSUFSΫϥε'PSNBUUFSΫϥεͷ࣮ʹࠨӈ͞ΕΔ ςετ
ςετ͠ʹ͍͘Ϋϥε վળྫ
ςετ͠ʹ͍͘Ϋϥε վળྫ
ςετ͠ʹ͍͘Ϋϥε վળྫ %*͢Δ &YBNQMF'PSNBUUFSGPSNBU ΛඇTUBUJDԽ
ςετ͠ʹ͍͘Ϋϥε վળྫ $POWFSUFS'PSNBUUFSͷ༰ʹࠨӈ͞Εͳ͘ͳͬͨɻ &YBNQMF"QQΫϥεʹॻ͍ͯ͋Δ͜ͱ͚ͩςετͰ͖͍ͯΔɻ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ ඞཁͳςετύλʔϯ͕ଟ͘ͳΔ ݅ذ͕ଟ͍
ςετ͠ʹ͍͘Ϋϥε վળྫ
ςετ͠ʹ͍͘Ϋϥε վળྫ JGจΛ3FTPMWFSʹஔ͖͑ͨ
ςετ͠ʹ͍͘Ϋϥε վળྫ ͭͷJGจͦΕͧΕͷύλʔϯ͕͍ͭ͘૿͑ͯɺ૿͑ͨύλʔϯ݅ ͚ͩ୯ಠͰςετՃ͢Εྑ͘ͳͬͨɻ ʢ1SPWJEFSͷςετ͚ͩ૿ͤେৎʣ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ
ςετ͠ʹ͍͘Ϋϥεྫ ςετ ϑΝο ͱͳΔ͕ग़ͯ͘Δ ʢ࣮ΫϥεͷӨڹΛड͚͍ͯΔ͔Βʣ ܧঝͨ͠Ϋϥεͷϝιουݺͼग़͠
ςετ͠ʹ͍͘Ϋϥε վળྫ
ςετ͠ʹ͍͘Ϋϥε վળྫ σίϨʔλʔԽ
ςετ͠ʹ͍͘Ϋϥε վળྫ &YBNQMF"QQ5FTU͕#BTF"QQͷ࣮ʹࠨӈ͞Εͳ͘ͳͬͨɻ &YBNQMF"QQΫϥεʹॻ͔Ε͍ͯΔ͜ͱ͚ͩΛςετͰ͖Δɻ
·ͱΊ w ςετରΫϥεͰଞͷΫϥεΛOFX͍ͯ͠ΔTUBUJD ϝιουΛݺͼग़͍ͯ͠ΔˠඇTUBUJDԽ͠Α͏ɻ%*͠Α ͏ɻ w ذ͕ଟ͍ˠετϥςδʔύλʔϯΛ͓͏ w ܧঝ͕͋ΔˠσίϨʔλʔύλʔϯΛ͓͏ ˞ࠓճհͨ͠ςΫχοΫ΄ΜͷҰ෦Ͱ͢ɻ
5IBOLZPV αϯϓϧίʔυɿIUUQTHJUIVCDPNXFCQIQDPOEPFYBNQMF