イディオム 説明 以下のように書きます。 if $0 == __FILE__ then # プログラムがコマンドで実行された場合 else # プログラムが require で読み込まれた場合 end $0 は Kernel モジュールが定義する定数で、現在実行中の Ruby スクリプトの名前を表す文字列です。 詳細は「Kernel モジュール」のリファレンスを参照してください。 __FILE__ は Ruby の標準の疑似変数で、現在のソースファイル名です。リファレンスの「変数と定数」を参照してください。 現在実行中の Ruby スクリプトと現在のソースファイル名が一致によって、コマンドで実行されたものであると判断します。 応用 本コードとテストコードを1つのソースコードにセットで書く このイディオムを使うことで、本コードとテストコードとを1つのソースファイルにまとめて書けます。 例えば