こんにちは、ryusukeです。
今日はプログラミング言語のRubyの特徴とメリット・デメリット、学習方法をこれから
Rubyを学習したいと思っている人向けに解説していきます。
この記事を最後まで読み終えることでRubyの特徴・Rubyのメリットとデメリット、学習の
やり方を知ることができます。
では、さっそく解説していきますね。
1:Rubyってなに?
まず、結論から言うとRubyは、まつもとゆきひろさんが1995年に日本で開発した、
コンパイルが不要のオブジェクト指向のプログラミング言語です。
Rubyは主にWEBサービスの開発に利用されることが多い言語で、有名な物だと以下の
サービスがRubyで開発されています。
- 初期のTwitter(現在はJava)
- クックパッド
- 食べログ
- クラウドワークス
- ラクマ
などなど、日本生まれの言語とあってかTwitterを除いて日本で開発されたWEBサービスで使われていることが多いのが特徴ですね。
これだけ多くの有名なサービスで利用されているRubyですが、学習の難易度は低く、
初心者でも習得しやすいプログラミング言語の1つです。
2:Rubyのメリット・デメリット
ここからは、Rubyのメリットとデメリットを解説していきます。
まずは、メリットから。メリットは以下の4つです
- 日本生まれの言語なので日本語の情報が多い
- 他の言語に比べて難易度が低い
- フレームワークのRuby on railsとの相性が抜群に良い
- コンパイルが不要なのでコードをすぐに実行できる
1つずつ深掘りしていきます。
メリット1:日本生まれの言語なので日本語の情報が多い
1つ目のメリットは日本生まれの言語なので日本語の情報が多いことです。
実際にRubyはさっきも書いたように日本で開発されたプログラミング言語なので日本語の
情報が他の言語に比べて多いです。
ボクがプログラミングを始めた際にエラーで苦しんだ際に、エラーを調べても英語の
ページばかり出てきて、Google翻訳で翻訳しながら調べたのを覚えています。
でも、Rubyだったら日本で開発された言語なのでエラーの解決方法が日本語で書かれている
記事が多いので初心者にとってありがたい点の1つです。
メリット2:他の言語に比べて難易度が低い
2つ目のメリットは他の言語に比べて難易度が低いことです。
Rubyは「ストレスなく楽しくプログラミングをすること」を目的に開発された言語なので、
コードが短く書けたり、;(セミコロン)を打つ必要がなかったりで、初心者にありがちな
ミスが起きにくい仕様になっています。
わかりやすい例だとRubyのコードですね。コードを見たことある人はわかると思いますが、
コードも短く書けるのでタイプミスによるエラーも起きにくいです。
具体的にはJavaScriptと比べるとわかりやすいかと。
JavaScriptでHello worldを出力するには下のコードを書いて出力します。
document.write("Hello World");
Rubyの場合は以下のとおり。↓
puts "Hello World"
こんな感じでコードを短く書けるなどRubyは他の言語に比べてストレスなくプログラミングを
楽しめる仕様になっているので、難易度が低いです。
メリット3:フレームワークのRuby on railsとの相性が抜群に良い
3つ目のメリットはフレームワークのRuby on railsとの相性が抜群に良いことです。
ここで、「え...、フレームワークってなに?」という人も居るはずなので、フレームワークの
説明もしておくと、フレームワークとは「サービスやシステムを開発する際に共通している
部分などの基礎的な部分が準備されている仕組み」みたいな感じです。
Rubyは、そのRubyのフレームワークのRuby on railsと相性が非常に良いんですよね~
なので、RubyとRuby on railsを組み合わせて使用することで、ただでさえハードルが低い
Rubyのハードルがさらに下がります。
メリット4:コンパイルが不要なのでコードをすぐに実行できること
4つ目のメリットはコンパイルが不要なので、コードをすぐに実行できることです。
プログラミングを少し勉強したことがある人ならわかると思いますが、JavaやC#などの
コンパイルが必要な言語はコードを書いてすぐに実行できるわけではなく、コンパイルという
プログラミング言語を機械語に翻訳する作業をした後にコードを実行することが出来ます。
その分コンパイル言語は実行速度も速いのですが、初心者の内はつまづくことも多いので
コンパイルがいらないのはRubyの大きなメリットになりますね。
実際に、始めて学ぶ言語がコンパイル言語で挫折した例はよく見ます。
その点も後で詳しく解説していきます。
ここまでRubyのメリットを解説していきましたが、Rubyにもデメリットはあります。
そのデメリットは以下の3点かと。↓
- WEBサービス以外の開発には不向き
- 日本以外の国ではオワコンになりつつある
- 実行速度が遅い
こっちも、順番に解説していきますね。
デメリット1:WEBサービスの開発には不向き
1つ目のデメリットはWEBサービスの開発には不向きなことです。
まあ、基本的にWEB系の言語はPHPなどWEB以外の開発には向いていないことが多いですが
Rubyも、残念ながらその例外ではないです。
実際に、Rubyを使って開発された有名なサービスは、さっきも上げたようにWEBサービスがほとんどでスマホアプリやAIなどで利用されている例はほとんどありません。
なお「Ruby好きでRubyでアプリを作りたい!」的な例だとRubyを使っても良いと思います。
デメリット2:日本以外の国ではオワコンになりつつある
2つ目のデメリットは日本以外の国ではオワコンになりつつあることです。
これは、以前に「5 Programming Languages That Are Probably Doomed」という
海外の記事で「Rubyが将来的にオワコンになる可能性が高い。」的なこがと書かれていて
「Rubyがオワコンになりつつある」と少し話題になりました。
でも、ボクの感覚では海外だとオワコンになりつつあるのは事実だけど、日本の場合は
そこまで気にする必要が無いと思っています。
なぜなら、Rubyは日本で開発された言語のため日本での評価が高いので、世界レベルでは
オワコンになっても日本でオワコンになるとは考えいにくいからです。
ただ「世界的にはオワコンになりつつある」のは知っておいた方が事実の1つとは思います。
例えば「海外で就職したい」みたいな人には結構重要な問題ですからね。
デメリット3:実行速度が遅い
3つ目のデメリットは実行速度が遅いことです。
まあ、これはRuby以外のコンパイルが不要な言語全てに言えると言っても良いのですが、
実行速度はコンパイル言語に比べて遅いです。
やっぱり機械語に翻訳したコードを実行するのと、普通にコードを書いてそのまま実行するのとでは前者の方が速く処理できるのは、まあ当然ですよね。
なので、実行速度が遅いことはRubyのデメリットの1つに入ってきます。
3:Rubyの学習方法
ここからは、Rubyの学習方法を解説していきますね。
まあ、これはRubyに限らずですが、プログララミングを学習するなら主に以下の2つの
方法があります。↓
- YouTubeなどで独学で学習する
- プログラミングスクールで学習する
どっちも一長一短があるので、順番に深掘りしていきますね。
1:YouTubeなどで独学で学習する
1つ目はYouTubeなどで独学で学習することです。
ちなみに、ボクはこの方法(独学)でプログラミングを習得しました。
独学でプログラミングを学習するには、YouTube上にあるプログラミング関係の動画を見たり
ネット上にある情報を調べながら学習していく感じになります。
当然ながら無料で学習することができるので、お金がかからないのが大きなメリットですね。
なお、独学でプログラミングを学習する際に役に立つYouTube動画をまとめた記事が
あるので、独学で学習したいと思う人は一度読んでみるのが良いかと。
下から読めますよ↓

2:プログラミングスクールで学習する
2つ目の学習方法はプログラミングスクールで学習することです。
ボクはプログラミングスクールに入った経験はないですが、プログラミングスクールの場合は
「行き詰った際に相談できるのがメリットかな~」と思います。
実際、独学でプログラミングを学習していると行き詰る時期は確実と言っていいほど
来るので、その際に相談できる環境があるのは嬉しい点の1つです。
あとは、調べてもわからない点があったり、解決できないエラーがあった際にも質問すると
解決策が判明することがあるので、その辺もメリットの1つですね。
なお、Rubyの場合は以下の2つのスクールがおすすめです。
ちなみに、スキルハックスについてはこのブログで詳しく解説してあります。
この記事も読んでみてください。

まとめ
ここまで、プログラミング言語のRubyの特徴とメリット・デメリット学習のやり方を
解説していきました。
記事でも書いたようにRubyはプログラミング初心者に向いている言語で、今から学習しても
遅くないので、迷っているなら是非この機会にスタートしてみてください。
おわり