プログラム中の処理の流れ

広告

Rubyでは基本的に1つの処理を行うプログラムを1行に記述します。先ほどのサンプルでは標準出力に「Hello」と出力する処理だけでしたのでプログラムも1行だけでした。ただ実際のプログラムでは複数の処理を行いますのでプログラムも複数行になります。

複数の処理を行わせたい場合にはプログラム内に複数の処理を記述できます。文の先頭から改行までが1つの処理となりますので、複数の処理を行う場合には改行で区切って続けて記述します。

test3-1.rb

puts("Hello")
puts("World")

今度のサンプルでは「pust」メソッドを使っています。このメソッドについても取りあえずは気にしないで下さい。

改行が1つの区切りとなっていますので、上記は「puts("Hello")」と「puts("World")」の2つの処理が記述されていることになります。

では実際に実行してみます。

プログラムの処理の流れ

複数の処理が順に実行されていることが確認できます。また処理はプログラム内で記述された順に上から下へ向かって実行されます。

ここで改行で処理を分けずに続けて書いてしまったらどうなるのかを見ておきます。

test3-2.rb

puts("Hello")puts("World")

では実際に実行してみます。

プログラムの処理の流れ

今度はプログラムの実行時にエラーが表示されました。これは「puts("Hello")」と「puts("World")」の2つの処理と認識されておらず「puts("Hello")puts("World")」と言う1つの処理と認識されてしまっているためです。これはRubyの文法上エラーであるため、実行時にエラーとなります。

プログラムを記述する場合には処理毎に改行を行って、どこからどこまでか1つの処理なのかを明確に分かるように記述して下さい。

区切り文字としてのセミコロン

Rubyでは1つの処理毎に改行で区分していますが、改行の代わりにセミコロン(;)を使用することも可能です。セミコロンを用いて先ほどのサンプルを記述すると次のようになります。

test3-3.rb

puts("Hello");puts("World")

今度はセミコロンによってどこからどこまでが1つの処理なのかが区別できますので、上記のプログラムは「puts("Hello")」と「puts("World")」の2つの処理であるとRubyが認識することが出来ます。それぞれの処理は間違いではありませんのでこのプログラムは正常に動作します。

プログラムの処理の流れ

セミコロンを使用すれば1つの行に複数の処理を記述することが出来ますが、プログラムを人間が見た時に何をしているのかが分かりにくくなりますのであまりお勧めではありません。1つの処理は1つの行に記述するようにしましょう。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)