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.1k
フルリモート時代のカンバン運用 / kanban-operation-in-remote
fortkle
0
620
GitHub Actionsで始めるPHPアプリケーションのCI実践入門 / ga-phperkaigi2020
fortkle
3
4.1k
余裕を生み出すコードレビュー 〜レビュイー編〜 / code-review-phpcon-2019
fortkle
8
6.8k
「設計振り返り」を始めてみようと思っている話 / architecture reflection
fortkle
3
530
「ママ向けNo.1アプリ」の 更なる成長を支える仕組み / startup-engineer-night-connehito
fortkle
2
280
良いテストデータ、悪いテストデータ / testdata-antipattern
fortkle
4
6.7k
BackstopJSで始める CSSリグレッションテスト / backstopjs-css-test
fortkle
0
1.5k
やさしいコーディング規約の導入〜その後〜 / yasashii-sonogo
fortkle
7
3.5k
Other Decks in Technology
See All in Technology
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
740
プロダクト成長に対応するプラットフォーム戦略:Authleteによる共通認証基盤の移行事例 / Building an authentication platform using Authlete and AWS
kakehashi
1
150
チームを主語にしてみる / Making "Team" the Subject
ar_tama
4
310
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
27
12k
AWS CDKでデータリストアの運用、どのように設計する?~Aurora・EFSの実践事例を紹介~/aws-cdk-data-restore-aurora-efs
mhrtech
4
650
初心者に Vue.js を 教えるには
tsukuha
5
390
「最高のチューニング」をしないために / hack@delta 24.10
fujiwara3
21
3.4k
顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed
soudai
24
6.8k
Vueで Webコンポーネントを作って Reactで使う / 20241030-cloudsign-vuefes_after_night
bengo4com
4
2.5k
なんで、私がAWS Heroに!? 〜社外の広い世界に一歩踏み出そう〜
minorun365
PRO
6
1.1k
[JAWS-UG金沢支部×コンテナ支部合同企画]コンテナとは何か
furuton
3
250
APIテスト自動化の勘所
yokawasa
7
4.2k
Featured
See All Featured
Designing for Performance
lara
604
68k
Navigating Team Friction
lara
183
14k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Designing for humans not robots
tammielis
249
25k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
The Pragmatic Product Professional
lauravandoore
31
6.3k
The Cost Of JavaScript in 2023
addyosmani
45
6.6k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
GraphQLの誤解/rethinking-graphql
sonatard
66
9.9k
Code Review Best Practice
trishagee
64
17k
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ಋೖʹཱͭ ·ͱΊ