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
y-tsuzaki
March 09, 2021
Programming
0
100
めざせ ブレークポイントマスター
PHPカンファレンス2020にてLTした際の資料です。
PhpStormにてPHPのXDebugのブレークポイントを使ったデバッグのやり方について紹介しています。
y-tsuzaki
March 09, 2021
Tweet
Share
More Decks by y-tsuzaki
See All by y-tsuzaki
PHPカンファレンス福岡2024 【超特急】SQLアンチパターン総おさらいLT
ytsuzaki
0
850
PHPカンファレンス北海道2024 リーダブルSQL
ytsuzaki
5
570
ある日PHPerがベンチャー企業のデータ基盤を作ることになったら
ytsuzaki
1
350
【PhpStorm】モブプログラミングの実践と学び【結局はバランス?】
ytsuzaki
0
340
PHPerKaigi 2022 【Laravel】 サクッとN + 1問題を見つけて倒しチャオ!
ytsuzaki
1
2.7k
【超特急】「SQLアンチパターン」 総おさらいLT 【4分で25個】
ytsuzaki
2
740
Nuxt Composition API 使ってみた
ytsuzaki
0
160
Nuxt.js x Composition API x TypeScript
ytsuzaki
0
660
PHPerKaigi 2021 LT PHPで簡単コード生成! 同じようなコードをたくさん書くなら コード生成しチャイナ!
ytsuzaki
0
100
Other Decks in Programming
See All in Programming
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
240
飲食業界向けマルチプロダクトを実現させる開発体制とリアルな現状
hiroya0601
1
390
Modern Angular: Renovation for Your Applications
manfredsteyer
PRO
0
200
Synchronizationを支える技術
s_shimotori
1
150
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
140
生成 AI を活用した toitta 切片分類機能の裏側 / Inside toitta's AI-Based Factoid Clustering
pokutuna
0
560
go.mod、DockerfileやCI設定に分散しがちなGoのバージョンをまとめて管理する / Go Connect #3
arthur1
10
2.3k
From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism- An Example
philipschwarz
PRO
0
160
CPython 인터프리터 구조 파헤치기 - PyCon Korea 24
kennethanceyer
0
240
現場で役立つモデリング 超入門
masuda220
PRO
12
2.9k
offers_20241022_imakiire.pdf
imakurusu
2
360
Kotlin2でdataクラスの copyメソッドを禁止する/Data class copy function to have the same visibility as constructor
eichisanden
1
110
Featured
See All Featured
Speed Design
sergeychernyshev
24
570
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Documentation Writing (for coders)
carmenintech
65
4.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
The Pragmatic Product Professional
lauravandoore
31
6.3k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Optimizing for Happiness
mojombo
376
69k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
328
21k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Fireside Chat
paigeccino
32
3k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Transcript
None
自己紹介 名前:つざき (Twitter @820zacky) PHPer歴:1.5年 所属: 仕事:
ブレークポイントを使ってデ バッグをしたこと ありますか?
Discordで アンケートを取ってみました (ご協力ありがとうございました)
※PHPCon参加者にアンケート(33人が回答)
※PHPCon参加者にアンケート(33人が回答)
※DiscordにてPHPCon参加者にアンケート(33人が回答) 「使ったことがない」 「ほとんど使わない」 が50%以上
意外と使ったことない人が多く て安心しました(笑)
僕も正直 2、3回しか 使ったことないです
私 なりたい
PhpStormについての話です それ以外のIDEの人は すみません
ブレークポイントってなに?
ブレークポイントってなに? - デバッグ作業においてプログラムの実行を一時停止させる箇所のこと
今までの処理の流れ ⬆ ⬆ 変数の中身 (実行中に書き換え可能) ⬇コードをー行ずつ実行したりできる
ブレークポイント 3種類もあるよ
1. 行ブレークポイント - 行に設定するブレークポイント
2. メソッドブレークポイント - メソッドの一行目で止まるブレークポイント
3. 例外ブレークポイント - 例外クラス名を指定する - ⚡マークが目印
便利そうなオプション
ブレークポイントのオプションを表示する方法 - ブレークポイントを右クリックすればOK - 他の方法もある
1. 条件 (Condition) - 条件式に一致するときだけブレークポイントが有効になる - 何度も実行される処理において、特定のときだけ停止したい時に便利そう
2. ログ (Log) - 任意のメッセージをコンソール上に表示できる - ブレークポイントの位置、スタックトレースも出せる - 便利そう
3. 中断 (Suspend execution) - オフにすると、プログラムの実行を一時停止しなくなる - ログ機能との組み合わせで使うと良さそう
他にも便利そうなオプションがあるが割愛 - 使用可能 (Enabled) - 一度ヒットしたら除去する ( Remove once hit
) - 次のブレークポイントに到達するまで無効にする (Disable until hitting the following breakpoint)
1. 使用可能 (Enabled) - ブレークポイントは消さないまま、ブレークポイントを無効化できる - これは普通に使いそう
一度ヒットしたら除去する( Remove once hit ) - 一度ヒットしたら無効化されます - 一回だけ止めたい時使うと良さそう(そのまま)
次のブレークポイントに到達するまで無効にする - 指定したブレークポイントがヒットしたら、有効化されるブレークポイント’ - 複雑なデバッグをするときは使うと便利かもしれない
まとめ - ブレークポイント便利! - 意外といろんなオプションがある! - 全部PhpStormの公式ドキュメントに書いてます! https://pleiades.io/help/phpstorm/using-breakpoints.html
None