Ruby(ルビー)はプログラミング言語
の一つで、日本人の「まつもとゆきひろ」さんがプログラミングがより楽しく、簡単
になるようにとつくった言語だよ。今日では世界中のプログラマーがいろんな分野
で使っているんだ。みんなが使っているWebアプリケーションも、Rubyでつくられているものがたくさんあるよ。
Rubyは、スクラッチのようなブロックを組み立ててプログラムをつくる方法とは違
って、文字や数字を入力することで、より人間の思考
に近い、柔軟
なプログラムをつくることができるんだ。
さて、前回はRubyでプログラミングするための環境
をみんなのパソコンに整
えたね。では、さっそくRubyでのプログラミングをはじめてみよう。今回初めてこの記事を読んだ、という人は、「Rubyを準備
しよう!」を参考
にして、プログラミング環境を用意してね。
1 プログラムをつくろう!
前回インストールしたエディター「TeraPad(テラパッド)」を起動
すると、新しいエディター画面が開く(もしくは「ファイル」メニュー→「新規作成
」で新たなエディター画面を出そう)。そこに、スペルや大文字、小文字、空白によく注意しながら、次のコードを入力してみよう。
① 入力が終わったら、まず「ファイル」メニュー→「文字/改行コードして保存」を選択
する。
② 「文字/改行
コード指定保存
」ダイアログが表示されるので、「文字コード」で「UTF-8」を選択し、「名前を付けて保存」にしてから、「OK」ボタンをクリックする。
③ すると、「名前を付けて保存」ダイアログが表示されるので、画面の下のほうの「ファイルの種類
」が「Rubyファイル」であることを確認したらファイル名を入力しよう。ここでは「lesson」としたよ。なお、拡張子
(.rb)は付けてもいいけど、ファイルの種類がRubyであれば、自動的に拡張子が入る。
正しく保存されると、エディター画面の左上にファイル名(lesson.rb)が表示されているはずだ。
2 つくったプログラムを実行しよう
それではつくったプログラムを実行してみよう。まず、コマンドプロンプトを開くよ。開き方は前回と同じように、「myruby」フォルダを開いて、アドレスバーのところに「cmd」と入力してエンターキーを押せばいいよ。
コマンドプロンプトが表示されたら、「C:\Users\user\Desktop\myruby>」のあとに、「ruby lesson.rb」と入力して、エンターキーを押してみよう。下のように表示されたら成功だ!
もしもエラーになってこのとおりに表示されていなかったり、文字化けが発生していたら、つくったプログラムの内容をもう一度確認してみてね。
これまでの作業をまとめると、プログラミングの流れは次のようになるよ。覚えておこう。
① コーディング (エディターで書く)
② プログラムの保存 (プログラムファイルを保存する)
③ プログラム実行 (コマンドプロンプトでプログラムを実行する)
3 プログラムの内容を理解しよう
今回つくったプログラム「lesson.rb」はどういう内容なのか、説明をしておこう。
① 1行目は「puts」という命令を使って( )内の文字を表示させている。Rubyではこの命令のことを「メソッド」、( ) の中身を「引数
」と呼んでいる。ここではHello Rubyの文字列をダブルクォート(” “)で囲んで文字列引数として文字列を表示させているよ。
「puts」メソッドは、引数を出力した後に、改行することを覚えておこう。
② 2行目は同じく「puts」を使って、「ルビーでプログラム」と日本語を表示させているね。やはりダブルクォートで囲んで文字列にしている。もしも文字化けして変な表示になっている場合は、「文字コード」の設定が違っている(UTF-8に設定してね)ので、「ファイル」メニュー→「文字/改行コードして保存」を確認しよう。
また、日本語を入力したときに、全角の設定を半角に戻すのを忘れて、そのまま全角のスペースを入れてしまうことがよくある。これもエラーになってしまうので気をつけよう。ただし、前回TeraPadで「半角/全角の表示と色の設定」をしたよね。半角スペースと全角スペースの区別がよくわかるので、入力のミスもすぐ気がつくんじゃないかな。
③ 3行目は、「10 + 20」という計算を実行してその結果を表示させているね。この場合はダブルクォートで囲んでいないことに注意してほしい。数字であることを示す場合は、ダブルクォートを使わずに直接引数としている。もちろん足し算だけでなく、引き算やかけ算、割り算もできるよ。
④ 4行目は、「#」記号ではじまっているコードで、「コメント行」と呼ばれるんだ。この「#」記号は、Rubyに対して「#がある行の#以降は実行しなくていいよ」ということを言っている。だから、#以降は実行されないよ。実際にはコメントや、コードの説明を書くときに使われるよ。
⑤ 5行目は、「print」というメソッドを使っている。コマンドプロンプトでプログラムを実行すると、5行目の文字列「Hello」と次の6行目の文字列「Ruby」は、改行されずに「Hello Ruby」と表示されているよね。
また、この行で引数を示す( )がないことに注意しよう。Rubyでは引数を表す( )は省略
してもいいことになっている。ただし、( )を省略する場合は、メソッドと引数の間に半角スペースを入れることになっているので、注意してね。
⑥ 6行目は、5行目でprintメソッドを使ったために、5行目の文字列と6行目の文字列が改行されずに表示されるのは、⑤で説明した通りだ。ただし、6行目を「puts」メソッドにすることで、7行目は改行して表示されている。
⑦ 7行目は、3行目と似ているけど、10と20をそれぞれダブルクォートで囲んでいるね。これは、数字の意味ではなくて、文字列であることを示しているんだ。そして「+」メソッドで10と20がくっついて「1020」と表示されるんだね。
⑧ 8行目は文字列のかけ算のように見えるね。この場合、「*」のかけ算メソッドは、ダブルクォートで囲まれた文字列を3回繰り返して表示させるんだ。
簡単なプログラムだったけど、うまくできたかな? 次回は、Rubyを使ってゲームをつくってみるよ。よく復習しておいてね!
(文/株式会社まちづくり三鷹 野口英一郎、竹下麻由)