◆当サイトで人気のプログラミング教室のおすすめランキングはこちら!
プログラミングは独学では非効率で、時間を無駄にするリスクがあります。効率的なカリキュラムで学べるスクールを受講しましょう。

DMM WEBCAMP【マンツーマンサポート】1ヶ月短期集中でプログラミングを学ぶスクール
1ヶ月通い放題・メンター常駐の教室環境でプログラミングを学びたい方!
TechAcademyオンラインで開講しているプログラミングスクール
オンラインでどこでも学べる!/教室に行くのが忙しい人でも安心!
TECH::CAMP教養としてのITスキルを学べるスクール
Webデザイン/AI(人工知能)/IOS/Androidアプリ制作/VRを学びたい方!
DMM WEBCAMP PRO転職保証付き!エンジニアとして転職したい人におすすめ!
未経験からプロのエンジニアへ3ヶ月で転職する為のスクールです!
1月生募集中!当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のDMM WEBCAMP PROコース。
12月生は満員となっております。1月生募集に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

Rubyを学習し始めるときに一番はじめにきになるのが、基本の文法や記述方法です。

プログラミング経験のある人であれば、感覚としてわかるかもしれませんが、今回は初めてプログラミングに触れる人でもわかりやすいようにRubyの基本文法・記述方法について解説していきます。

Ruby言語の基本文法

Rubyのプログラムを学習していくに当たって、参考書のサンプルコードを入力していくのは基本です。

しかし、なにも考えずにコピーしていくだけでは、あまり意味はありません。どうせなら、「なぜそんな記載をするのか」を考えながら入力した方が学習効果も高いでしょう。

ここでは、以下のサンプルコードを元に、そんなRubyの基本文法を説明していきます。

msg1 = "はろー Ruby1--"
msg2 = 'Hello Ruby2-'

puts(msg1)
puts msg2
puts("Hello Ruby3")
puts msg1 + "はろー Ruby3"

a = 10
b = 100
c = "10"

puts(a)
puts(b)
puts(c)
puts(3)
puts(a + b)
# puts(3 + c)

少し長いですが、ご了承ください。
(※「puts」というのは画面に表示させる命令(関数)です)

プログラムコードの解説

まずは、上述のプログラムコードの解説をしましょう。

「msg1 = "はろーRuby1--"」や「a = 10」というのは、「=」の左にある変数(箱)に、右にある文字列や値を格納する(代入する)ことを表しています。

そして、「puts(msg1)」や「puts(a)」はputsという関数に、括弧の中もしくは空白の後の変数や値などを渡していることを表しています。

つまり、このプログラムは、「代入した文字列や数値、および文字列や値をputs関数に渡して表示している」プログラムです。

他にも気になるところはあるかもしれませんが、それは後で説明しましょう。

Ruby言語の基本的な考え方

Ruby言語でプログラムを作っていく上で、重要な文法のひとつは、「プログラムは上から下へ順に処理される」ということです。

これは、ほとんどのプログラムでも言えることですが、プログラムは上から順に処理されていきます。そのため、最初にmsg1に「はろーRuby1--」を代入している瞬間には、msg2やa、bにはなにも入っていません。

逆に、msg1を表示した後にmsg1の内容が書き換わったとしても、すでに表示されている内容が変わることはありません。

人間はいろいろなことを並列に考えられますが、コンピュータは基本的にひとつのことしかできないと考えても良いかもしれません。(実際には並列処理も可能ですが、そのためにはそれ専用のプログラムを作成する必要があります)

Rubyの記述方法

基本の基本が分かったところで、具体的な記述方法を見ていきましょう。

Ruby言語は比較的自由に記載できるプログラム言語ですが、プログラムの見やすさ(可読性)などを考慮して、記述方法に一定の決まり事があります。

また、ちょっとした文字の違いで動きが変わることもありますので、いまのうちから気を付けておいた方が良い点も紹介してます。

基本的な記述方法

サンプルコードの中にある基本的な記述を羅列してみましょう。

・「=」や「+」の左右には半角の空白を入れる
・関数に変数や値を渡すときは、関数の後ろの()の中に入れるか、空白をあける
・関数に変数や値を渡すときに計算式を入れても良い
・文字列は、""もしくは''で囲む
・「#」を入力すると、「#」からその行の末尾(改行)まではは無視される

それぞれ、少し詳しく見ていきましょう。

空白の入れ方

まず1つめの「=」や「+」の前後の空白については、実際のところは入れなくても問題ありません。可読性の観点から入れた方が良いだけです。

しかし、関数の後ろの空白は必須です。空白がなければ、コンピュータはどこまでが関数を示しているのかが分かりません。

また、Rubyには以下の予約語と呼ばれるものがあります。(詳細は割愛します)

BEGIN    class    ensure   nil      self     when
END      def      false    not      super    while
alias    defined? for      or       then     yield
and      do       if       redo     true     __LINE__
begin    else     in       rescue   undef    __FILE__
break    elsif    module   retry    unless   __ENCODING__
case     end      next     return   until

これらはプログラムの動作を決めるものですので、正確な解釈が求められます。そのため、必ず空白で区切らなければいけません。

つまり、()など区切りが分かるものがある場合は除いて、基本的にはすべて空白で区切るべきだと言えます。

関数へ渡す値の区切り

Rubyでは、関数へ値を渡す場合、()の中に入れる方法と、空白で区切る方法が使えます。

これは、他の言語から移行してきた人が容易にRubyを習得したり、他言語のプログラムをスムーズにRubyへ移植したりすることができる利点があります。

しかし、上述のように空白で区切ることで、不要なミスを助長する恐れがあります。そのため、Rubyを学習しようとしている皆さんは空白区切りではなく、()を使うようにしましょう。

計算式について

演算子の書き方そのものは、長くなりますので、ここでは割愛します。

ただし、計算式をどう扱うかについて、基本的な考え方を理解しておきましょう。

プログラムコードの中で計算式は記述するというのは、その結果がそこに挿入されるということです。

計算式をそのまま渡すということもうまくすれば可能ですが、そういったことをする必要がない場合がほとんどですので、まずは「できない」と考えておいた方が良いでしょう。

文字列について

""もしくは’’で囲むことで、それは文字列として扱われます。しかし、なぜ、""と''のどちらでも良いのかが不思議に思うかもしれません。

当然ですが、""の場合と''の場合で、同じ文字列でも違う扱いがされます。ただの文字列を扱いたい場合は同じですが、特殊な文字を扱ったりする場合に動きが変わってくるのです。

詳細は長くなりますので、ここでは割愛しますが、ほとんどの場合は""を使っていれば問題が起きませんので、まずは文字列は""で囲むと憶えておいて良いでしょう。

コメント

「#」からその行の末尾(改行)までは、プログラムコードとは解釈されません。

そのため、「#」を使えば、プログラムコードの説明文(コメント)をプログラムの中に記入することができます。
小見出し:その他
ここで紹介しきれていない決まりで押さえておいた方が良いものもありますので、以下に紹介しておきます。

・インデントは空白2文字
・コメントは、1行の場合「#」、複数行の場合は「=begin」と「=end」で囲む。「__END__」以降はすべてコメントになる。

やってみよう

基本的な記述方法は以上です。

では、実際に、これらの記述法に従ってプログラムを書いて、Ruby環境で実行するための準備を行います。

とりいそぎは、最初に紹介したサンプルプログラムを実行するための準備をしていきましょう。

テキストエディタで入力する

テキストエディタを使って、サンプルコードを入力してください。

使用するテキストエディタはなんでも良いですが、Windowsのメモ帳では問題が発生しますので、気を付けてください。

サクラエディタなどの高機能テキストエディタを使用することをおすすめします。(ここでは、サクラエディタで説明します)

保存する

テキストエディタに入力したプログラムは、いったん保存しなければ実行できません。そのため、保存します。

なお、作成したファイルがあちこちに存在すると非常に面倒ですので、事前に格納用のフォルダを作成しておくことをおすすめします。

できるだけ階層の浅いところの方が都合が良いので、ここでは、Cドライブ直下に「Ruby」というフォルダを作成しています。

ただし、そのまま、ただ保存するだけでは、実行するときに困る場合がありますので、最初の1回は必ず次の手順を踏むようにしましょう。
(※2回め以降は上書き保存で問題ありません)

1.「ファイル」-「名前補付けて保存」を選択
2.保存フォルダを格納用のフォルダに変更(ここでは、C:\Ruby)
3.任意のファイル名を入力(ここでは、「hello_ruby.rb」)なお、必ず末尾の拡張子は「.rb」でなければいけません。
4.文字コードセットは「UTF-8」を選択する
5.「保存」ボタンを押す


ポイントはファイル名の拡張子「.rb」と文字コードセット「UTF-8」です。これが違っていると、うまく動かないことがありますので、注意してください。

なお、フォルダ名やファイル名に全角文字を使うのも、思わぬ不具合の元になりますので、避けた方が無難です。

まとめ

Rubyの基本文法と記述方法について、説明しました。

ここで紹介した内容は非常に基本的なことですが、基本的なこと故にベテランでも忘れてしまって問題発見に時間がかかることがあることでもあります。

いまのうちにしっかりと押さえておくようにしましょう。


・プログラムは上から下に順に処理されていくもの
・プログラムは1度にひとつのことしかできない(だから上から順番にしか処理できない)
・プログラムを見やすくする(可読性を上げる)ことで、不具合が出にくくなる
・「=」や「+」の前後には空白を入れる
・関数に値を渡す場合は()で囲う
・文字列は基本的に""で囲う
・計算式を記述すると、プログラム実行時に、その結果に置き換わる
・プログラムはテキストエディタで入力する
・保存するときのファイル名は任意だが、拡張子は必ず「.rb」にすること
・保存時の文字コードは「UTF-8」にすること

DMM WEWBCAMP/DMM WEBCAMP PROについて

DMM WEBCAMPは1ヶ月でプログラミング・WEBデザインを学ぶ通い放題のプログラミングスクールです。DMM WEBCAMP PROは3ヶ月間で未経験から即戦力エンジニアを育成する転職保障付きのプログラミングスクールです。

2つのサービスを運営するインフラトップでは、「学びと仕事を通して人生を最高の物語にする」という理念で会社を経営しています。

キャリアアップを目指す方は、この機会に私達と一緒にプログラミングを学んでみませんか?

1月枠も残りわずか当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のDMM WEBCAMP PROコース。
12月受入枠は満員となっております。1月枠に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

▼未経験から1ヶ月でWEBデザイン・プログラミングを学びたい方はこちら!


▼ついに開講!オンラインでWEBデザイン・プログラミングを学びたい方はこちら!

【インタビュー】1ヶ月でRubyをゼロから学び、Webエンジニアとして転職!

Rubyエンジニアを目指し、WebCampでRubyを学び、見事Webエンジニアとして転職を果たした田中さんにお話を伺いました。

Rubyの学習がしたい。基礎をしっかりと理解したい

転職のサポートがほしい

と考えている方はぜひお読み下さい。

【WebCamp卒業生インタビュー】1ヶ月でRubyをゼロから学び、Webエンジニアとして転職!

おすすめの記事