Upgrade to Pro — share decks privately, control downloads, hide ads and more …

めざせ ブレークポイントマスター

めざせ ブレークポイントマスター

PHPカンファレンス2020にてLTした際の資料です。

PhpStormにてPHPのXDebugのブレークポイントを使ったデバッグのやり方について紹介しています。

y-tsuzaki

March 09, 2021
Tweet

More Decks by y-tsuzaki

Other Decks in Programming

Transcript

  1. View Slide

  2. 自己紹介

    名前:つざき (Twitter @820zacky)   

    PHPer歴:1.5年

    所属:

    仕事:


    View Slide

  3. ブレークポイントを使ってデ
    バッグをしたこと

    ありますか?

    View Slide

  4. Discordで

    アンケートを取ってみました


    (ご協力ありがとうございました)


    View Slide

  5. ※PHPCon参加者にアンケート(33人が回答)


    View Slide

  6. ※PHPCon参加者にアンケート(33人が回答)


    View Slide

  7. ※DiscordにてPHPCon参加者にアンケート(33人が回答)

    「使ったことがない」

    「ほとんど使わない」

    が50%以上


    View Slide

  8. 意外と使ったことない人が多く
    て安心しました(笑)

    View Slide

  9. 僕も正直
    2、3回しか
    使ったことないです

    View Slide

  10. 私

    なりたい

    View Slide

  11. PhpStormについての話です
    それ以外のIDEの人は
    すみません

    View Slide

  12. ブレークポイントってなに?

    View Slide

  13. ブレークポイントってなに?
    - デバッグ作業においてプログラムの実行を一時停止させる箇所のこと

    View Slide

  14. 今までの処理の流れ ⬆ ⬆ 変数の中身 (実行中に書き換え可能)
    ⬇コードをー行ずつ実行したりできる

    View Slide

  15. ブレークポイント
    3種類もあるよ

    View Slide

  16. 1. 行ブレークポイント
    - 行に設定するブレークポイント

    View Slide

  17. 2. メソッドブレークポイント
    - メソッドの一行目で止まるブレークポイント

    View Slide

  18. 3. 例外ブレークポイント
    - 例外クラス名を指定する
    - ⚡マークが目印

    View Slide

  19. 便利そうなオプション

    View Slide

  20. ブレークポイントのオプションを表示する方法
    - ブレークポイントを右クリックすればOK
    - 他の方法もある

    View Slide

  21. 1. 条件 (Condition)
    - 条件式に一致するときだけブレークポイントが有効になる
    - 何度も実行される処理において、特定のときだけ停止したい時に便利そう

    View Slide

  22. 2. ログ (Log)
    - 任意のメッセージをコンソール上に表示できる
    - ブレークポイントの位置、スタックトレースも出せる
    - 便利そう

    View Slide

  23. 3. 中断 (Suspend execution)
    - オフにすると、プログラムの実行を一時停止しなくなる
    - ログ機能との組み合わせで使うと良さそう

    View Slide

  24. 他にも便利そうなオプションがあるが割愛
    - 使用可能 (Enabled)
    - 一度ヒットしたら除去する
    ( Remove once hit )
    - 次のブレークポイントに到達するまで無効にする
    (Disable until hitting the following breakpoint)

    View Slide

  25. 1. 使用可能 (Enabled)
    - ブレークポイントは消さないまま、ブレークポイントを無効化できる
    - これは普通に使いそう

    View Slide

  26. 一度ヒットしたら除去する( Remove once hit )
    - 一度ヒットしたら無効化されます
    - 一回だけ止めたい時使うと良さそう(そのまま)

    View Slide

  27. 次のブレークポイントに到達するまで無効にする
    - 指定したブレークポイントがヒットしたら、有効化されるブレークポイント’
    - 複雑なデバッグをするときは使うと便利かもしれない

    View Slide

  28. まとめ
    - ブレークポイント便利!
    - 意外といろんなオプションがある!
    - 全部PhpStormの公式ドキュメントに書いてます!
    https://pleiades.io/help/phpstorm/using-breakpoints.html

    View Slide

  29. View Slide