この記事は「ひとりでカンファレンスふりかえりo0h Advent Calendar 2021」のday-24です。

ひとりでカンファレンスふりかえりo0h Advent Calendar 2021 - Adventar

今日振り返るのは、「ステップ実行だけじゃないXdebug」です。 PHP Conference Japan 2021のCfPに応募しました。Regular session (25 mins)の枠になります。

ステップ実行だけじゃないXdebug

https://speakerdeck.com/o0h/hello-xdebug

概要

Xdebugに標準で実装されている機能のうち、「Code Coverage」「Step Debugging」って使ったことがある人や知っている人が多そう!でも、それ以外はどうですか・・・?というところを紹介する内容です。

発表した後にk1Lowさんにリアクションされたのが凄い嬉しかったなぁ〜という想い出があります。

https://twitter.com/k1LoW/status/1444867100774830082

具体的には、「どういう機能で」「どうやって(如何にお手軽に)使うのか」という話をしよう、と思っていました。

前者の観点では「すごく有用で効果的である」ということを、後者の観点では「実は難しくない」ということを受け取ってもらえるといいな〜という気持ちです。

また、併せて「Xdebug2から3への変更点」のようなものも言及していました。これによって「Xdebug3怖くないよ」という事実を共有したいなーと。

結果的に、以下の4機能を中心に紹介することにしました。

  1. Development Helpers
  2. Tracing
  3. Profiling
  4. Code Coverage

とくに、Code Coverageについては、少し紹介内容を工夫できたのではないかな?と感じています。 一般的なユースケースである「テスト実行時に通ったコードを洗い出す」ものではなく、開発者ご本人のYoutubeで紹介されていた「実際にプロダクションコードを動かして、利用されていないコードを炙り出す」という方面での話をしました。 決して自分のオリジナルなアイディアではないですし、単に「既に公開されているナレッジを引っ張ってきたもの」に過ぎないですが、ある意味そうした知識の転移がこの発表の狙いでもあるのでした。

動機