かつて、デバッグでどうしても行き詰ったときは最後の手段としてソースコードを印刷して紙の上でデバッグを行うということが行われていました。が、ふと思ってみるとそういう習慣って最近はしなくなったなーと思い、なんでだろうと自分なりに考えてみました。
- 画面が広くなって一度に閲覧できる範囲が広くなった。もはや80字x25行にしばられることはない。
- OOPなどが普及して責任範囲を明確にするようになり、あっちこっち参照しまくる必要がなくなった(これはかなり怪しい
- プログラミングとはライブラリ呼び出しのことになり、ロジックが全てソース上にあるわけではなくなった。
- 言語仕様やライブラリなど参照するリファレンスが膨大になりソースコードだけ印刷してもおっつかなくなった。
- そもそもソースコードの規模が爆発的に増えて印刷できる分量ではなくなった。
- IDEが激烈に進化して印刷しなくても追跡が容易になった。
といったところですかねぇ。一番は画面の広さかなと思いますが。かつての25行(もちろん環境によっては多少の違いはありましたが)というのはソースコードを潜望鏡で覗いているようなもので、とてもロジックを全貌して眺めるということはできませんでした。全貌するには印刷するしかなく、だからこそ印刷デバッグは有効だったわけです。しかし、今は画面サイズは広くなり、ひとかたまりのロジックを全貌するということは容易にできるようになりました。ならば、わざわざ印刷する必要はないということです。逆に、今でも印刷しないと全貌が把握できないという場合は、適切なロジックの分割が行われていない悪質なソースコードとも言えるように思います。
あとは、IDEの進化ってのも大きいですよね。参照先の情報がリアルタイムにポップアップして表示されますから、いちいちソースを切り替えて参照先を追っかける必要もない。
ということで、もはや印刷デバッグは死語になったと言っていいように思います。もちろん、世の中私の知らない開発環境はたくさんあるでしょうから、まだまだ現役って世界もあるのかもしれませんけれど。