Photo by Masatoshi Seki
こんにちは。谷口です。
paizaを運営していると、よく「転職のためにRubyを勉強したい」という方からの相談を受けることがあります。
Rubyはコードの記述量が比較的少なくて済むため、初心者でも読み書きがしやすく、学習も進めやすいプログラミング言語です。また、クックパッドやグノシーなど有名サービスの開発にも利用されており、日本中・世界中のWebサービス開発企業に広く普及しています。
Rubyを学ぶメリットとしては「学習教材が充実している」「転職にも役立つ」といったことが挙げられます。特に、Webサービスを開発するエンジニアになりたい方なら、学んでおいて損はありません。
今回は、Rubyを学ぶメリットやC言語のコードとの比較、またRubyの学習に役立つコンテンツをご紹介します。
■Rubyを学ぶメリット
◆初心者でも書きやすくわかりやすい
Rubyは、比較的コードがシンプルで短くて済みます。また、初心者でも文法を理解しやすいので、学習のハードルもそれほど高くありません。
そのため、他の言語に比べると覚えることが少なく、挫折する可能性は低いかと思います。
◆学習教材が充実している
Rubyは日本人のまつもとゆきひろ氏が開発した言語です。日本のWebサービス開発企業でも多く使われており、日本語の書籍や学習サイト、関連情報の記事なども充実しています。
プログラミング言語は英語のドキュメントや学習コンテンツを当たらなければならないケースも多くあります。(もちろんそれも初心者が次へ進むには必要なステップですが…)そんな中で、日本語の教材が充実していてRubyは、初心者でも学習を進めやすいかと思います。
◆使っている企業が多い(転職にも役立つ)
Rubyは、実際にWebサービスを作っている多くの企業で使われている言語です。
こちらの記事の求人人気言語ランキング(paiza掲載の求人票で「メイン言語」として記載されている数が多い言語のランキング)でも、Rubyは3位に入っています。
paiza.hatenablog.com
特にこれからWeb開発ができるエンジニアを目指したい人は、Rubyの勉強を始めておいて損はないでしょう。
■Rubyの特徴とC言語との比較
Rubyがシンプル書きやすいとされるのは
- 行の終わりのセミコロンが不要
- if・for・whileなどの括弧が不要
- 変数やメソッドの型宣言が不要
などといった特徴があるからです。
以下のようにC言語のコードと比べてみると、同じ処理をするにもコードが短くシンプルで済むことがわかります。
◆変数宣言
【C言語】
int num = 1; string str = "paiza";
【Ruby】
num = 1 str = "paiza"
◆if文
【C言語】
#include <stdio.h> int main(void) { int num = 7; if (num >= 10) { printf("大吉"); } else if (num >= 5) { printf("中吉"); } else { printf("小吉"); } return 0; }
【Ruby】
num = 7 if num >= 10 puts "大吉" elsif num >= 5 puts "中吉" else puts "小吉"
◆for文を使ったFizzBuzz
※FizzBuzzとは、1から順に次の数字を発言していき、3で割り切れる場合は「Fizz」、5で割り切れる場合は 「Buzz」、3でも5でも割り切れる場合は「Fizz Buzz」と発言しなければならないゲームです。
【C言語】
#include <stdio.h> int main(void) { int i; for (i = 1; i <= 100; i++) { if (i % 3 == 0 && i % 5 == 0) printf("Fizz,Buzz\n"); else if (i % 3 == 0) printf("Fizz\n"); else if (i % 5 == 0) printf("Buzz\n"); else printf("%d\n", i); } return 0; }
【Ruby】
(1..100).each do |i| if i % 3 == 0 && i % 5 == 0 puts "FizzBuzz" elsif i % 3 == 0 puts "Fizz" elsif i % 5 == 0 puts "Buzz" else puts i end end
■Rubyを学べる学習コンテンツ
◆paizaラーニング
動画で学べるpaizaラーニングでは、プログラミング未経験から始められる入門レッスンを多数公開しております。1回3分程度の動画とオンラインエディタを使い、ブラウザだけでプログラミングが学べます。
ただいま、2月20日(火)~2月26日(月)の期間限定で「Ruby入門編」のレッスンを全編無料公開しております。ぜひごらんください。
◇Progate
スライドによるレッスンで基礎を学び、オンラインエディタでコーディングをして実行結果を見ることができます。コーディングの際は、エディタやプレビュー画面と一緒にお手本となる見本画面や解説もあります。
■まとめ
Rubyは、動くものが比較的簡単に作れて、学習もしやすい言語です。初心者の方でも、学習サービスをうまく使ってRubyの基礎スキルを身につけていくことは充分可能です。ご興味のある方は、ぜひいろいろ試してみてください。
なお、プログラミングが動画で学べる「paizaラーニング」では、ふだん有料公開しているRuby入門のレッスンを、2月20日(火)~2月26日(月)の期間限定で全編無料公開しております。この機会にぜひRubyを学んでみてください。
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。