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
1.2k
2
Share
テストを助けに使って設計を改善しよう~リファクタリングことはじめ~
PHPカンファレンス北海道2019 cfp落選したのでアンカンファレンスで喋ります。
Hiromi Hishida
September 21, 2019
More Decks by Hiromi Hishida
See All by Hiromi Hishida
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
1.1k
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
1.3k
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
440
エンジニアのための 法規制への取り組み方 #healthtechmeetup
77web
9
2.9k
サービスクラスのありがたみを発見したときの思い出 #phpcon_odawara
77web
7
1.7k
「それはhowなんよ〜」のガイドライン #orestudy
77web
11
3.4k
空が堕ち、大地が割れ、海が涸れた日~もしも愛用しているフレームワークが開発停止したら?~ #phperkaigi 2025
77web
2
2k
Beyond ORM
77web
11
2.6k
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
9
8.9k
Other Decks in Programming
See All in Programming
Swiftのレキシカルスコープ管理
kntkymt
0
200
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.8k
RTSPクライアントを自作してみた話
simotin13
0
370
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.2k
ECR拡張スキャンでSBOMを収集して サプライチェーン攻撃の影響調査を 爆速で終わらせてみた
akihisaikeda
2
210
さぁV100、メモリをお食べ・・・
nilpe
0
110
New "Type" system on PicoRuby
pocke
1
380
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
190
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
270
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
250
Featured
See All Featured
Believing is Seeing
oripsolob
1
140
Game over? The fight for quality and originality in the time of robots
wayneb77
1
180
Docker and Python
trallard
47
3.9k
エンジニアに許された特別な時間の終わり
watany
107
240k
Making Projects Easy
brettharned
120
6.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
300
Context Engineering - Making Every Token Count
addyosmani
9
920
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
470
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
130
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
120
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