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
2k
PhpStorm導入アンチパターン / phpstorm-anti-pattern
fortkle
February 22, 2017
Tweet
Share
More Decks by fortkle
See All by fortkle
無駄な物をなるべく作らないリプレイス戦略 / replace-strategy-phperkaigi2021
fortkle
1
2.2k
フルリモート時代のカンバン運用 / kanban-operation-in-remote
fortkle
0
640
GitHub Actionsで始めるPHPアプリケーションのCI実践入門 / ga-phperkaigi2020
fortkle
3
4.3k
余裕を生み出すコードレビュー 〜レビュイー編〜 / code-review-phpcon-2019
fortkle
8
7k
「設計振り返り」を始めてみようと思っている話 / architecture reflection
fortkle
3
530
「ママ向けNo.1アプリ」の 更なる成長を支える仕組み / startup-engineer-night-connehito
fortkle
2
290
良いテストデータ、悪いテストデータ / testdata-antipattern
fortkle
4
6.8k
BackstopJSで始める CSSリグレッションテスト / backstopjs-css-test
fortkle
0
1.5k
やさしいコーディング規約の導入〜その後〜 / yasashii-sonogo
fortkle
7
3.6k
Other Decks in Technology
See All in Technology
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
260
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
RSNA2024振り返り
nanachi
0
580
組織貢献をするフリーランスエンジニアという生き方
n_takehata
1
1.3k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.2k
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
270
君も受託系GISエンジニアにならないか
sudataka
2
430
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
2.9k
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
960
現場で役立つAPIデザイン
nagix
33
12k
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
400
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
A designer walks into a library…
pauljervisheath
205
24k
Automating Front-end Workflow
addyosmani
1368
200k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
KATA
mclloyd
29
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Embracing the Ebb and Flow
colly
84
4.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Site-Speed That Sticks
csswizardry
4
380
Navigating Team Friction
lara
183
15k
Into the Great Unknown - MozCon
thekraken
35
1.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ಋೖʹཱͭ ·ͱΊ