【Ruby入門】Rubyでできることから基礎文法、初心者におすすめの学習方法まで

【Ruby入門】Rubyでできることから基礎文法、初心者におすすめの学習方法まで
「これからRubyを学びたい、習得したいと考えているけれど、何から始めていいのか分からない……」そんな方に向けて、この記事ではRubyの入門編として最低限知っておくべきことを解説していきます。 そもそもRubyとは何なのか、どんなことができるプログラミング言語なのか、初心者でも簡単に学習できる?など、プログラミング初心者の方が気になることをご紹介。効率的な学習方法についても解説しますので、これからRubyを身に着けていきたいという方はぜひ参考にしてみてください。

 

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

1.Rubyとは?

Rubyは、1995年に日本人の「まつもとゆきひろ」氏が考案したプログラミング言語です。日本で開発されたプログラミング言語として、初めて国際電気標準会議(IEC)で国際規格に認証されました。

「ストレスなくプログラミングを楽しむ」ことを重視して設計された言語であり、可読性の高い構文構造から初心者でも習得しやすい言語として人気があります。

Rubyの特徴

ほかの言語と比較した際のRubyの特徴についてご紹介します。

オブジェクト指向スクリプト言語である

オブジェクト指向とはプログラミングにおける考え方の一つで、全ての要素をオブジェクト(モノ)として扱います。Rubyはオブジェクト指向型の言語であり、Rubyで扱うデータは全てオブジェクトとして管理され、オブジェクトに対して処理を行うという考え方です。
 
後ほど詳しく解説しますが、「メソッド」として処理をひとまとめにして繰り返し使えるようにして新規でコードを書く手間を省くことができます。このように、効率的にシステム開発を行うことができるのがオブジェクト指向スクリプト言語のメリットでもあります。

初心者でも学習しやすい

Rubyはプログラミング初心者でも比較的習得しやすい言語だと言われています。その理由の一つとして、言語構造がシンプルであることが挙げられます。

冒頭でも説明したように、「ストレスなくプログラミングを楽しむ」ことを重要視して開発された言語のため、基本的な文法ルールさえ覚えることができれば比較的直感的に扱いやすいとされています。

また、Rubyは実行環境が整えば、WindowsやMacなどさまざまなOSで動作が可能です。そのため、プログラミングを初めて学ぶ人にもおすすめの言語といえるでしょう。

日本語での情報が豊富

日本人が開発した純国産プログラミング言語のため、日本語ドキュメントが豊富であることも特徴です。プログラミング言語は英語圏発祥のものが多く、困ったときのサポートやドキュメントも英語になるため、英語が苦手な人にとってはハードルが高い部分もあります。

対して、Rubyは国内でもユーザーが多いため、独学で勉強する際に役立つ日本語サイトや困ったときに参考になるドキュメントが数多くあります。この点もRubyが初心者にとって習得しやすいとされている理由の一つです。

Ruby on Railsについて

Rubyの特徴の一つとして、Rubyで利用できるフレームワークの「Ruby on Rails」があります。フレームワークとは、大規模なシステムを開発する際に利用される、さまざまな拡張機能を集めたパッケージを指します。

フレームワークには、データベース接続やセッション管理機能など、アプリケーションを開発する際に役に立つ機能が多数備わっているのが特徴です。

Ruby on Railsは上述したRubyGemsで簡単にインストールできます。Ruby開発ではRuby on Railsを採用するケースが多いため、Rubyの学習がひと段落したらRuby on Railsの学習も行うのがおすすめです。

関連記事:フレームワークとは?概要やプログラミング言語別の機能を分かりやすく解説

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

2.Rubyでできること

Rubyは軽量なスクリプト言語であり、汎用性が高いのも魅力のひとつです。Rubyを使ってできることの例をご紹介します。

SNSの開発

SNSではさまざまなデータをシステムから連携するためにAPI(Application Programming Interface)が使われます。Ruby on RailsでAPI開発のためのプログラムが提供されており、本格的なAPI開発を効率的に行うことができることから、多くのSNS開発でRubyが採用されています。

Webアプリ開発

Rubyはおもに、クラウドサービスなどのWebアプリケーション分野で多く採用されています。さらに、開発効率の高さから、スマートフォン向けアプリケーションやソーシャルゲームの開発などでの採用例も増えているのも特徴です。

スクレイピング

Webサイト上から欲しいデータを抽出することをスクレイピングといいます。Rubyを使って特定のWebサイト上から文章や画像などのデータを抜き取り、その情報を加工して新たな情報として活用したりすることも可能です。

Rubyには「RubyGems」と呼ばれるパッケージ用のシステムがあり、そこでNokogiriというスクレイピング用ライブラリも提供されていますので、それらを使ってスクレイピングを行うことが可能です。

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

3.Ruby入門で必須となる環境構築

次に、Rubyを動かすために必須である環境構築の手順について解説します。WindowsにおけるRubyのインストール方法から最初のプログラム実行までを紹介するので、ぜひ参考にして取り組んでみてください。

Rubyのインストール方法

まずはRuby公式サイトより、Windows向けRubyインストーラ(RubyInstraller)をダウンロードしましょう。

RubyはさまざまなバージョンのRubyInstrallerが存在していますが、これから学習を始めるのであれば、2024年にリリースされた最新バージョンであるRuby 3.2.3をインストールするのがおすすめです。

最初にライセンス画面が表示されるため、確認後「I accept the LicenseRubyInstraller」を選択し「Next」を押します。次の画面では任意のインストール場所を選択し、2項目にチェックをつけた状態で「Install」を押してください。

次に、コンポーネントの選択画面に移るため、2項目にチェックをつけた状態で「Next」を押します。次の画面でMSYS2のセットアップ項目にチェックし、Finishを押してください。

Rubyのインストール完了後、自動的にUNIXシェル環境であるMSYS2のインストールが始まります。「1→Enter」「2→Enter」「3→Enter」とキーボードを操作すれば、インストールは完了です。

なお、ダウンロード方法はRubyのバージョンによって異なる場合があるため、バージョンごとに必要な操作を行ってください。

最初のプログラムの実行

Rubyのインストールが完了したら、最初のプログラムを実行します。

まずは、デスクトップなどの任意の場所に、拡張子を.rbとしたファイルを作成しましょう。今回は例として「hello.rb」とします。作成したファイルをメモ帳などのテキストエディタで開き、以下の文章を入力してください。

puts "Hello, world!"
次に、WindowsのスタートメニューからWindows PowerShellもしくはコマンドプロンプトを開き、以下の例のように「Ruby ファイル名」と入力してRubyプログラムを実行します。
ruby C:\Users\testuser\Desktop\hello.rb
画面に「Hello, world!」と表示されたらRubyのインストールは成功です。

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

4.Rubyの基礎文法

Rubyに限らず、プログラミング言語の記述には必要なルールや構成があります。ここでは、Rubyを学習するうえで必須となる基本構文について解説するので、把握しておきましょう。

Rubyの基本ルール

Rubyは快適にコードを書けるように制約は最小限となっており、ほかのプログラミング言語と比較しても記述の自由度が高い言語です。しかし、最低限守るべきルールが存在するため、以下で説明します。

1処理を1行で記載する

Rubyでは、1処理を1行で記載することが原則です。厳密には、セミコロンを設けることで複数の処理を1行に記述できますが、ソースコードの可読性が下がるため推奨されていません。

Rubyファイルの拡張子は.rbとする

Rubyでは、プログラムを記載したファイルには.rbという拡張子をつけます。厳密には、ほかの拡張子でもRubyプログラムとして実行できますが、ファイルがRubyプログラムであることを示すために必ず拡張子を.rbとするのが一般的です。

文字出力

Rubyではデバッグ用として使用されるputsメソッドを用いて、画面上に文字を出力できます。なお、Rubyで文字列を指定する際は、以下のようにダブルクオーテーションまたはシングルクオーテーションで囲うことが必要です。

puts "Hello, world!"
puts 'ようこそ世界!'

変数処理

Rubyでは、変数を任意の文字列で指定できます。ただし、ifやforなどRubyプログラム上で既に意味を持つ言葉は指定できません。

なお、プログラム上で既に意味を持つ言葉を「予約語」といいます。よく使用される予約語は把握しておくと便利です。

Rubyでは、以下のように変数を"#{xxx}"と表記することで変数の値を画面出力できます。

num = 1
puts "数字は#{num}です" #「数字は1です」と出力

次のような指定をすれば、変数に対して加算や減算などの処理が可能です。

num = 1
num = num + 1
puts "数字は#{num}です" #「数字は2です」と出力

Rubyでは、配列は[a, b, c, ...]という形式で指定します。配列には任意の数の値を格納できるのが特徴です。たとえば、以下のような指定を行います。

nums = [1, 2, 3]
puts "数字は#{num[0]}と#{num[1]}と#{num[2]}です" #「数字は1と2と3です」と出力

ハッシュ

ハッシュとは、個々の配列の要素に名前(キー)を付けられるようにした連想配列です。Rubyでは{key1 => a, key2 => b, …}という形式で、次のようなハッシュを作成できます。

members = {"田中"=> 25, "佐藤" => 18, "小林" =>32}
puts "田中さんは#{member["田中"]}歳です" #「田中さんは25歳です」と出力

条件分岐

Rubyで条件分岐を行う際は、「if-else-end文」を用いるので把握しておきましょう。

if文は条件式の値が真である場合に処理を行い、値が偽である場合はelse文内の処理が行われます。作成例は以下の通りです。

age = 40

if age > 20 then
  puts "大人です"
else
 puts "子どもです"
end

繰り返し処理(ループ処理)

Rubyで繰り返し処理(ループ処理)を行う場合は「for文」「while文」を用います。

for文は、指定した配列などの中身をすべて取り出して処理するのが特徴です。配列の全ての要素に対して同じ処理を行いたい場合、for文を用いれば利便性が増します。

たとえば、以下のような使い方ができるので参考にしてください。

members = ["田中", "佐藤", "小林"]
for member in members do

   puts "#{member}さん" #「田中さん」「佐藤さん」「小林さん」と出力
end

一方、while文は、条件式が真である間は処理を繰り返します。使用例は以下の通りです。

members = ["田中", "佐藤", "小林"]
count = 0

while count < 2 do
  puts "#{members[count]}さん" #「田中さん」「佐藤さん」と出力

  count = count + 1

end

メソッド・クラスの利用

メソッドとは、プログラム中の処理をひとまとめにし、繰り返し実行できるようにしたもの。またクラスとは、複数のメソッドと変数をひとまとめにした設計書のようなものです。クラスを作成すればプログラムを再利用しやすく、効率的な開発が可能です。

クラス内やクラス間で使用されます。繰り返し用いる共通の処理をメソッドにすると便利です。

クラスとは、複数のメソッドと変数をひとまとめにした設計書に該当します。クラスを作成すればプログラムの再利用性が高まり、効率的な開発が可能です。

メソッドの使用例は以下です。
point = 75
result = judge(point) #judgeメソッドの結果、resultに「合格」が代入される
puts "結果は#{result}です" #「結果は合格です」と出力

#judgeメソッド
def judge(point)
  if point > 50 then
    return "合格"
  else
    return "不合格"
  end
end

Rubyでは、クラスが持つメソッドや変数へのアクセスはドット(.)を用います。また、クラス中にインスタンス変数を指定する際には「@xxxx」と表記するのがルールです。

具体的には、次のように使用します。
exam = new Examination()
exam.judge(75) #試験クラスのjudgeメソッドを実行
puts "結果は#{exam.getResult}です" #「結果は合格です」と出力

#試験クラス
class Examination
  #judgeメソッド
  def judge(point)
    if point > 50 then
       @result = "合格"
    else
      @result = "不合格"
    end
  end

  #結果を返すメソッド
  def getResult
    return @result
  end
end

ここでご紹介した文法は基礎的なものの一部ですが、まずはこれらの基本的なコードの書き方をマスターできるように反復練習するようにしましょう。

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

5.初心者におすすめのRubyの学習方法

学生やRuby初心者が学習を始める際、書籍を読んだりWeb上のチュートリアルを実施したりするなどの方法があります。さまざまな学習方法があるので、自分に合ったツールを選択しましょう。

ここでは、学生や初学者に向けて、Rubyを学習するための効率的な方法を紹介するので参考にしてください。

書籍で学ぶ

Rubyは書籍で学習できます。

前述のように、Rubyは日本生まれのプログラミング言語であり、国内での人気が高いです。初学者向けの入門書も多数販売されており、Rubyの学習に活用できます。

ただし、Rubyは初心者向けで分かりやすい言語ですが、書籍を用いた独学での学習は疑問点を解消できなかったり、情報を網羅しにくかったりするなど、どうしても挫折しやすい環境になりがちです。

書籍での独学が難しい人は、後述するスクールの活用も視野に入れるとよいでしょう。

Web上のチュートリアルを活用する

Ruby公式の「20分で始めるRuby」など、Web上にはRuby入門のためのさまざまなチュートリアルサイトが存在します。

多くのチュートリアルは無料で利用できますが、情報の質が担保されていない可能性もあるため注意してください。評判を確認するなどしたうえで、信頼のおけるチュートリアルを利用するのがおすすめです。

Rubyの資格試験を受ける

Rubyの学習方法として、Rubyの資格試験を受けるのもよいでしょう。Rubyには「Ruby技術者認定試験」があり、問題集も用意されています。

試験は学習の成果が数値で分かるため、自分の習熟度を把握できる点がメリットです。結果に合わせて次の学習スケジュールも組めるため、ある程度学習が進んだら受験してみることをおすすめします。

プログラミングスクールを活用する

Rubyを学習する際は、プログラミングスクールを活用するのも方法の一つです。

独学での学習は分からないところを質問する場が少なく、ハードルが上がりやすいでしょう。質問の場があっても細やかなサポートは難しく、小さなつまづきからそのまま挫折してしまう人も少なくありません。

そこで、Rubyを学習できるプログラミングスクールを利用するのがおすすめです。スクールによっては資格取得や就職の支援も行ってくれます。

ただし、スクールに通う際は費用がかかるため、スクール選びは十分比較して慎重に行いましょう。

関連記事:就活で使えるポートフォリオの作り方!構成例や7職種の自己紹介例文を紹介

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

6.Rubyを挫折せず学ぶための4つのコツ

Rubyを挫折せず学ぶには、モチベーションの維持やプログラミングの習慣をつけることが大切です。

Rubyに限らずプログラミング言語に慣れていない場合、途中で分からなくなったり同じ作業の繰り返しが嫌になったりして、挫折する人もいます。学習に挫折すると、「Rubyエンジニアとして就職する」などの目標に対して自信を喪失する可能性もあるため、自分なりに挫折しない環境を作ることが重要です。

ここでは、Ruby入門から学習を挫折せずに続けるためのコツを4つご紹介します。

モチベーションを保つ

Rubyの学習を挫折せず行うために、モチベーションを保つことが重要です。モチベーションを保つ方法は複数ありますが、たとえば以下の方法が挙げられます。
 

  • ・自分がRubyエンジニアを目指すきっかけとなった人を思い出す

    ・Rubyの学習が就活でよい効果を発揮していることを想像する

    ・Rubyエンジニアがプログラムを書いている動画を見る

    ・Rubyをマスターした後の活躍を想像する など


たとえ気持ちが落ちても、自分なりのモチベーションを上げる方法を見つけておけば、学習を途中で断念する確率が下がるでしょう。

毎日プログラムを触る習慣をつける

Rubyを挫折せずマスターするために、毎日少しでもプログラムを触る習慣を身につけることも大切です。

特に、初心者の時はいったん学習から離れると内容を忘れてしまい、学習意欲が減ってしまう恐れがあります。ただし、学習は長期間続くため、無理せず継続が容易な時間を設定するのがおすすめです。

アウトプットをこまめに行う
Rubyの学習では、こまめにアウトプットを行うことも挫折防止につながります。

インプットだけでは、何をどの程度学習すればよいか分からなくなりがちです。アウトプットを行えば、自分の開発したい目的に対して何が足りないのかが分かりやすくなるでしょう。

また、学習した内容を実際に使用することで理解できる部分もあります。習熟度が格段に上がるため、積極的にアウトプットを行いましょう。

なお、本記事にも記載しているようなサンプルプログラムを活用したアウトプットもおすすめです。

疑問を解消できるサイトを利用する

Rubyの学習中に出た疑問を解消できるサイトを利用するのも、挫折を防ぐのに効果的です。

たとえば、Qiitaというサイトでは自分の学習状況を投稿したり、分からない点を質問したりできます。質問に必ず回答が返ってくるとは限りませんが、ほかの人の質問状況も見れるため参考になるでしょう。

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

\15年超の実績を持つレバテックが運営/

ITエンジニア就活支援サービスに登録する

7.まとめ

Rubyは、プログラミング言語の中でも構文が理解しやすく、豊富な日本語ドキュメントがあることから初心者でも学びやすい言語です。学習を始める際には、まずはRubyの動作環境を用意し、基礎構文の習得や学習方法の理解を進めていきましょう。

学生時代からRubyを学んでおけば、ポートフォリオにできたりスキルのアピールにつながったりするため就活に役立ちます。本記事を参考に、挫折しない環境を整えながら学習すれば、Ruby言語の習得に一歩近づけるでしょう。

ITエンジニアを目指す新卒学生向け就活エージェントならレバテックルーキー

レバテックルーキーは、レバテックが運営するITエンジニア専門の就活エージェントです。多数のITエンジニアのキャリア支援経験のあるアドバイザーが、あなたのスキルと希望に合わせた企業の紹介から、人事目線での面接対策など、就職までを一貫してサポートします。ES添削、面接対策、ポートフォリオ作成サポートなども実施していますので、まずは一度カウンセリングにお越しください。

就活アドバイザーに相談してみる

レバテックカレッジ 就活まで支援するエンジニア志望学生のためのプログラミングスクール