今回は ruby のプリントデバッグについての解説になります。

プリントデバッグは、p や puts など、変数や処理結果を表示するメソッドを使用して、
その中身を確認する方法です。

puts よりも p のほうがより詳細な情報を取得できるため、
この p を処理の途中に記述し、途中の状態を表示させることで、処理の確認や、間違いを探すことになります。

あまり複雑なものだとわかりにくいので簡単な例をみていきましょう。

というように、変数に値をいれ、p でその値を表示するようにします。

今回の場合、変数 msg の値が、最初の状態では、
のメールアドレスを変更しました
という状態でしたが、

の部分の処理で、もし flag が true ならの条件により、

によって
mail と msg の内容を結合することで

という内容に変わります。

それでは実践してみましょう。

実際にコードを書いたほうが理解しやすいので、Atom エディタで実践してみましょう。

Atom で実行するときにファイルを保存して端末で実行では面倒なので
script パッケージを追加します。

これでコードを書いて ctrl + shift + b で実行すると結果をみることができます。

では実践してみましょう。

をコピペし、ctrl + shift + b で実行してみましょう。

すると結果は

というように出力されます。

Screenshot from 2016-07-23 07:13:10

それでは、今回の要点をまとめてみましょう。
・変数や処理の流れを把握するためには、結果を p で出力し、内容を確認する。
・複雑な処理の場合、途中で p をいくつか記述し、判定基準の true false などの値も確認してみる。

プリントデバッグした後には、#でコメントアウトしておくと後々メンテをするときに確認場所がわかるので消さずにコメントアウトしておきましょう。