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
PhpStorm導入アンチパターン / phpstorm-anti-pattern
Search
fortkle
February 22, 2017
Technology
0
2.1k
PhpStorm導入アンチパターン / phpstorm-anti-pattern
fortkle
February 22, 2017
Tweet
Share
More Decks by fortkle
See All by fortkle
無駄な物をなるべく作らないリプレイス戦略 / replace-strategy-phperkaigi2021
fortkle
1
2.4k
フルリモート時代のカンバン運用 / kanban-operation-in-remote
fortkle
0
710
GitHub Actionsで始めるPHPアプリケーションのCI実践入門 / ga-phperkaigi2020
fortkle
3
4.6k
余裕を生み出すコードレビュー 〜レビュイー編〜 / code-review-phpcon-2019
fortkle
8
7.3k
「設計振り返り」を始めてみようと思っている話 / architecture reflection
fortkle
3
580
「ママ向けNo.1アプリ」の 更なる成長を支える仕組み / startup-engineer-night-connehito
fortkle
2
320
良いテストデータ、悪いテストデータ / testdata-antipattern
fortkle
4
6.9k
BackstopJSで始める CSSリグレッションテスト / backstopjs-css-test
fortkle
0
1.5k
やさしいコーディング規約の導入〜その後〜 / yasashii-sonogo
fortkle
7
3.6k
Other Decks in Technology
See All in Technology
Master Dataグループ紹介資料
sansan33
PRO
1
3.9k
AIでテストプロセスを自動化しよう251113.pdf
sakatakazunori
0
110
コミュニティと共に変化する 私とFusicの8年間
ayasamind
0
450
日々のSlackアラート確認運用をCustom Chat Modesで楽にした話 / 日々のSlackアラート確認運用をCustom Chat Modesで楽にした話
imamotohikaru
0
480
Amazon ECS デプロイツール ecspresso の開発を支える「正しい抽象化」の探求 / YAPC::Fukuoka 2025
fujiwara3
11
1.9k
自己的售票系統自己做!
eddie
0
430
CDKの魔法を少し解いてみる ― synth・build・diffで覗くIaCの裏側 ―
takahumi27
1
140
やり方は一つだけじゃない、正解だけを目指さず寄り道やその先まで自分流に楽しむ趣味プログラミングの探求 2025-11-15 YAPC::Fukuoka
sugyan
1
510
メタプログラミングRuby問題集の活用
willnet
2
790
Quarkusで作るInteractive Stream Application
joker1007
0
120
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
2
800
明日から真似してOk!NOT A HOTELで実践している入社手続きの自動化
nkajihara
1
100
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
We Have a Design System, Now What?
morganepeng
54
7.9k
Producing Creativity
orderedlist
PRO
348
40k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Mobile First: as difficult as doing things right
swwweet
225
10k
Done Done
chrislema
186
16k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Transcript
ՈͷຖΛͬͱসإʹɻ 1)1#-5 1IQ4UPSNಋೖΞϯνύλʔϯ
ࣗݾհ ߴߊ !GPSULMF !GPSULMF ίωώτͱ͍͏ձࣾͷ1)1FSɻ
1IQ4UPSNಋೖΞϯνύλʔϯ ͜ͷ-5Ͱ ʮ7JNNFS͕1IQ4UPSNΛಋೖͨ͠ͱ͖ʹ ى͜Γ͕ͪͳΞϯνύλʔϯʯ ʹ͍ͭͯൃද͠·͢
w ࠷ॳʹΨοπϦ৮ΕͨΤσΟλ͕7JN w ৽ଔ͔Βͣͬͱ͍ͬͯΔͷͰ͔Ε͜Ε͙Β͍ w ʮWJNSDಡॻձʯͷաڈϩάΛݟͯࣗͷWJNSDΛ ચ࿅͚ͤͯࣗͩ͞ͷ࠷ڧͷWJNSDΛ࡞Δͷָ͕͍͠ ࣗͷΤσΟλࣄ 1IQ4UPSNಋೖΞϯνύλʔϯ
w ʮ1IQ4UPSN࠷ߴʂʂʯʮศརʂʂʯͱ͔ॻ͍ͯΔ ϒϩάɺπΠʔτΛΑ͘ݟ͔͚ΔΑ͏ʹͳͬͨ w ʮ7JNͰͦΕͰ͖Δ͠ʂʯͱࢥ͚ͬͨͲ ݕূͤͣʹݴ͏ͷྑ͘ͳ͍ͳɺͱɾɾɻ 1IQ4UPSNಋೖͷ͖͔͚ͬ 1IQ4UPSNಋೖΞϯνύλʔϯ
1IQ4UPSNಋೖΞϯνύλʔϯ ͦ͏ͱܾ·Εͬͦ͘͞ࢼ͢ʂ
1IQ4UPSNಋೖΞϯνύλʔϯ ࢼ༻ظؒ͋Δ͠ʂ
1IQ4UPSNಋೖΞϯνύλʔϯ ʙ͜͜ͰաڈͷએݴΛ͝ཡ͍ͩ͘͞ʙ
1IQ4UPSNಋೖΞϯνύλʔϯ
1IQ4UPSNಋೖΞϯνύλʔϯ
1IQ4UPSNಋೖΞϯνύλʔϯ
1IQ4UPSNಋೖΞϯνύλʔϯ ݱ࣮ݫ͍͠
1IQ4UPSNಋೖΞϯνύλʔϯ ͔͠͠ʜ͍ͭʹࠓճʜ
1IQ4UPSNಋೖΞϯνύλʔϯ
1IQ4UPSNಋೖΞϯνύλʔϯ ಋೖʹޭ
1IQ4UPSNಋೖΞϯνύλʔϯ ͱ͍͏͜ͱͰ
1IQ4UPSNಋೖΞϯνύλʔϯ ͜Ε·Ͱಋೖʹࣦഊ͠·͖ͬͯͨ͘ࢲ͔Β ʮ͜ΕΞϯνύλʔϯͩͳʂʯ ͱࢥ͏ͷΛൃද͍ͨ͠ͱࢥ͍·͢
৯Θͣݏ͍ 7JNସ +*4ΩʔϘʔυ γϣʔτΧοτઌߦ ҰਓͰͰ͖ΔΜ
Ξϯνύλʔϯ 1IQ4UPSNಋೖΞϯνύλʔϯ
1IQ4UPSNಋೖΞϯνύλʔϯ ύλʔϯ৯Θͣݏ͍
ύλʔϯ৯Θͣݏ͍ 1IQ4UPSNಋೖΞϯνύλʔϯ ͱ w ʮ*%&՝ۚΞΠςϜɻ͑ɻʯͱ͍ͬͨࢥ w 1IQ4UPSNͪΌΜͱͬͨ͜ͱͳ͍͚ͲͳΜͱͳ͘ 7JN*%&ͩͱࢥͬͯ͠·͏ w ໌Β͔ͳϝϦοτ͕͋Δͷʹ*%&ʹΓ͑ΛקΊͯ
ʮ͕࣌ؒͳ͍ʯʮࠓͷΤσΟλʹ׳Ε͍ͯΔʯ
ύλʔϯ৯Θͣݏ͍ 1IQ4UPSNಋೖΞϯνύλʔϯ ͳͥΞϯνύλʔϯʁ w *%&ϚεΩʔϘʔυͱಉࣗ͘͡ͷੜ࢈ੑΛ ্͛ΔͨΊͷࢿ w ໌Β͔ʹ7JNΑΓ1IQ4UPSNͷํ͕༏Ε͍ͯΔ͕͋Δ ͷʹʢٯ͔͠Γʣɺ࣮ࡍʹͬͯΈΔ͜ͱͳ͘ ਖ਼͘͠ରΛධՁͰ͖ͳ͍ͷͳͷͰʁ
ύλʔϯ৯Θͣݏ͍ 1IQ4UPSNಋೖΞϯνύλʔϯ ղ๏ w ͱʹ͔͘৮ͬͯΈΔ w ʮ͕࣌ؒͳ͍ʯͱݴ͏ਓԿߟ͑ͣʹ1)1#-5ͷ -5ʹਃ͠ࠐΊྑ͍ͱࢥ͏ w 1IQ4UPSNͷൃදΛ͢Δ͔͠ͳ͍ʜͱ͍͏ঢ়گʹ͍ࠐΉ
1IQ4UPSNಋೖΞϯνύλʔϯ ύλʔϯ7JNସ
ύλʔϯ7JNସ 1IQ4UPSNಋೖΞϯνύλʔϯ ͱ w ͳΜͰ7JNͰ͍ͬͯͨ͜ͱΛସ͠Α͏ͱ͢Δ w ʮ7JNͰ͍͕ͬͯͨ̋̋Ͱ͖ͳ͍͔ΒԶʹ߹Θͳ͍ʯ w ʮ7JNସͰ͖ͳ͍ͳΒ7JNͰ͍͍ʯ
ύλʔϯ7JNସ 1IQ4UPSNಋೖΞϯνύλʔϯ ͳͥΞϯνύλʔϯʁ w ͦͦ7JNͱ*%&ಉ͡ྖҬͷͷͰͳ͍ w ʮͲͪΒ͔ʯͰͳ͘ʮͲͪΒʯ͏બࢶ
ύλʔϯ7JNସ 1IQ4UPSNಋೖΞϯνύλʔϯ ղ๏ w ʮେৎେৎʂϑϨϯζʹΑͬͯಘҙͳ͜ͱͱ ɹෆಘҙͳ͜ͱ͕͋Δ͔ΒͶʂʯ w దࡐదॴͰ͏ w
7JNখ͞ͳमਖ਼ɺTTI͕ඞཁͳͱ͖ w 1IQ4UPSNେنͳमਖ਼ɺେنͳίʔυϕʔεɺ ɹɹɹɹɹίʔυϦʔσΟϯάɺ੩తղੳ
1IQ4UPSNಋೖΞϯνύλʔϯ ύλʔϯ+*4ΩʔϘʔυ
ύλʔϯ+*4ΩʔϘʔυ 1IQ4UPSNಋೖΞϯνύλʔϯ ͱ w +*4ΩʔϘʔυΛ͏͜ͱ w ಛʹ.BDͳͷʹ8JOEPXTͷ+*4ΩʔϘʔυΛ͏ͱࠈ
ύλʔϯ+*4ΩʔϘʔυ 1IQ4UPSNಋೖΞϯνύλʔϯ ͳͥΞϯνύλʔϯʁ w +FU#SBJOT+*4ΩʔϘʔυΛܨ͍Ͱ64ΩʔϘʔυ ͱͯ͠ೝࣝ͢Δόά͕͋Δ w *EFB7JNͳͲͷ7JNͬΆ͘͢ΔϓϥάΠϯΛೖΕͨͱ͖ ྫ͑ɺ$USM<͕ਖ਼͘͠ೝࣝ͞Εͳ͍ͷͰࠔΔ
ύλʔϯ+*4ΩʔϘʔυ 1IQ4UPSNಋೖΞϯνύλʔϯ ղ๏ w 64ΩʔϘʔυΛ͏ɻҎ্ɻ
ύλʔϯ+*4ΩʔϘʔυ 1IQ4UPSNಋೖΞϯνύλʔϯ ղ๏ ͓·͚ w .BDͳͷʹ8JOͷ+*4ΩʔϘʔυΛ͍ͬͯΔਓʢࢲʣ ࢀߟʹͳΔ͔Θ͔Βͳ͍͚ͲࢲͷϒϩάΛݟΔͱ ྑ͍ͱࢥ͏ɾɾɾIUUQCMPHGPSULMFDPN w ͨͩ͠ɺ04͕4JFSSBͳਓɾɾɾ͝ΊΜͳɾɾɾ
1IQ4UPSNಋೖΞϯνύλʔϯ ύλʔϯγϣʔτΧοτઌߦ
ύλʔϯγϣʔτΧοτઌߦ 1IQ4UPSNಋೖΞϯνύλʔϯ ͱ w ʮศརͳγϣʔτΧοτ̋બʯΈ͍ͨͳهࣄΛ खΛಈ͔͢ΑΓઌߦͯ͠खͨΓ࣍ୈʹಡΉ
ύλʔϯγϣʔτΧοτઌߦ 1IQ4UPSNಋೖΞϯνύλʔϯ ͳͥΞϯνύλʔϯʁ w Θ͔ͬͨؾʹͳΔ w ࣮ࡍʹ͓͏ͱͨ͠ͱ͖ʹࢥ͍ग़ͤͳ͍ w 7JNNFSͳΒସͷςΩετฤूܗ γϣʔτΧοτΑΓ7JNͷΓํͰͬͨํָ͕
ύλʔϯγϣʔτΧοτઌߦ 1IQ4UPSNಋೖΞϯνύλʔϯ ղ๏ w ͬͯΔ࣌ʹײͨ͡ʮ1IQ4UPSNͰࠔͬͨ͜ͱɾ Γ͍ͨ͜ͱʯΛϝϞ͓ͯ͘͠ w ͕࣌ؒ͋Δͱ͖ʹௐΔ w ͚ࣗͩͷνʔτγʔτΛ࡞Δ
w ݕࡧͷํͱ͔࠷ॳʹεΫϦʔϯΩϟετݟΔͷ0, w IUUQTMBSBDBTUTDPNTFSJFTIPXUPCFBXFTPNFJOQIQTUPSN w IUUQUBOBLBIJTBUFSVIBUFOBCMPHKQFOUSZ w IUUQQIQTUPSNUJQT
1IQ4UPSNಋೖΞϯνύλʔϯ ύλʔϯͻͱΓͰͰ͖ΔΜ
ύλʔϯͻͱΓͰͰ͖ΔΜ 1IQ4UPSNಋೖΞϯνύλʔϯ ͱ w 1IQ4UPSNΛͬͯΜͩΓ͔Βͳ͍͜ͱ͕͋ͬͯ ͻͱΓͰղܾ͠Α͏ͱ͢Δ
ύλʔϯͻͱΓͰͰ͖ΔΜ 1IQ4UPSNಋೖΞϯνύλʔϯ ͳͥΞϯνύλʔϯʁ w ຊޠใ͕͋·Γͳ͍ w ඇޮʢଞਓʹฉ͍͙ͯ͢ղܾ͢Δͷฉ͖͘ʣ
ύλʔϯͻͱΓͰͰ͖ΔΜ 1IQ4UPSNಋೖΞϯνύλʔϯ ղ๏ w 4MBDLάϧʔϓʮ1)1ϢʔβʔζʯͷQIQTUPSNͰ ࣭͢Δ w 5XJUUFSͰͭͿ͘ w ൃചͷ8&#
%#13&44WPMΛಡΉ w 1IQ4UPSNಛू͕͋ΔΑʂ
1IQ4UPSNಋೖΞϯνύλʔϯ ·ͱΊ
1IQ4UPSNಋೖΞϯνύλʔϯ w ΞϯνύλʔϯʹؕΔ͔Βͣʂ w ΤσΟλͷ͔ͨͪेਓे৭ w ྑ͍ίʔυ͕ॻ͚ΔखʹೃછΜͩͷ͕Ұ൪ʂ w ͚ͷϑϨϯζͷࢥ1IQ4UPSNಋೖʹཱͭ ·ͱΊ