ウェイ系大学生がRuby on Railsを勉強して初心者にもわかりやすく説明するよ①

こんにちは。ウェイ系大学生です。自分でウェイ系って言っちゃうところが恥ずかしくてたまらないのですが、実は最近まったくウェイしてません!
Ruby on Railsなるものを、コツコツと勉強してるんです。
ここでは、Ruby on Railsの概要から、勉強方法までをまとめてみました。この記事を通して、「Ruby on Railsってなんだ?」「Railsを勉強しようか迷っている。」「どのように勉強したらいいかわからない!」といった方のもやもやを晴らすような、そんな手助けができれば嬉しいです。
ただ、あくまでも自分の復習用でもあるので、間違っている箇所があればその際はコメントを下さい。笑

Ruby on Railsを勉強しようと思ったきっかけ

もともとプログラミングとの距離が近かった

ベンチャー企業でインターンをしていた私は、エンジニアの方と接する機会が多く、プログラミングと物凄く近い距離にいました。
しかし、なかなか勉強するモチベーションがわかず、結局プログラミングには手をつけないでいたんです。その結果、私はRubyとRailsの違いがわからないまま。「何勉強してるの?」と聞かれた時に「Rubyです。」とか「Railsです。」バラバラに答えてしまったりなんてこと、初心者の方は結構あるあるなんじゃないでしょうか。

ベンチャー企業でのインターンを通して

そんな中、1年間のベンチャー企業でのインターンを終えた私は「自分だけでサービスを作りたい。」そう思うようになり、今回独学でRuby on Railsを勉強しようと思ったのです。

Ruby on Railsとは?

Railsの歴史

そもそもWeb界隈の中でRuby on Rails(ルビーオンレイルズ)という言葉が流行り初めたのが、2006年の頃だそうです。それから、さまざまなWebアプリケーションでRubu on Railsが使われるようになり、今では多くのエンジニアがこのフレームワークを使っています。

RubyとRailsの違い

はじめに、僕もよくわかっていなかった、RubyとRailsの違いについて説明していきましょう。まず勘違いしてほしくなのが、「Ruby」というのはプログラミング言語だということです。
iPhoneアプリ開発用のObjective-CやSwiftもプログラミング言語だし、Javaもそう。このプログラミング言語は、コンピューターを動かすための命令文です。
そして、そのプログラミング言語Rubyを使ったフレームワークがRuby on Railsになります。フレームワークとは、ログイン機能や、コンテンツの新規作成、編集、削除、更新といった機能を持つWebアプリケーションを簡単に作るためツールです。
実際にプログラミング言語を使って1から書くとなると、めちゃめちゃ大変なのですが、Ruby on Railsを使うと効率的かつ簡単にサービスを作れちゃうというから驚き。このRuby on Railsが略してRailsになるのです。これで、「Ruby」と「Rails」の違いがわかりましたか?

Railsにはデメリットもある?

Webアプリケーションを初心者の方でも簡単に作れるのがRailsですが、もちろんデメリットも存在します。
それは細部の理解が甘くなってしまうこと。Railsでは効率化のために、本来書くべきコードを自動的に処理して行ってくれます。初心者にとってこれほど便利なものはないのですが、「どのようにコンピュータが処理をしているのか」といった細部まではこのRailsでは学ぶことができません。
どうしてこれが動いているのかわからないまま開発をして、知識が甘いままエンジニアになってしまうと、エラーが起こった場合に、迅速な対処ができなくなってしまう恐れがあります。
参考記事:今すぐ辞めて欲しい、「Ruby on Rails勉強してます」

それでもRailsを使いたくなる理由

開発の単純化

Railsでは、「設定より規約 (Convention over Configuration)」という考え方を重視しています。Railsが出る前は、アプリケーションの設定ファイルにエンジニア自らが、アプリケーションに関する設定を全て行わなくてはいけませんでした。
しかし、このRailsが登場してから、そのような設定をしなくてもRailsが決めているルールに則って開発をするだけで、サービスを作ることができるようになりました。

データベース管理が簡単

次にあげたいのは、データベースの操作が直感的になっているということです。初心者のかたは「何を言っているの?」となりそうですが、ここでは概念的なものだけ説明しようと思います。
本来、データベースを操作するにはSQLという言語を使っていましたが、この言語、いやらしいくらい長いのです。それがRailsによって、短いコードでも書けるようになりました。時間を短縮化できるだけではなく、エラーが出てしまった時、どこが間違っているのか見つけやすくなるなんてメリットもあります。

多くのWebサービスで使われている

そして最後に、このRuby on Railsを使ってさまざまなサービスが開発されていることです。
cookpadcookpad価格.comMoneyForwardAirBnbGithubなど誰もが知っている有名サービスが作られています。このように、このフレームワークを使って、どのようなサービスが作れるのかがわかると、なんだかやる気になってきませんか?

初心者の方におすすめするRails勉強手順

「よし、じゃあ勉強してみよう!」と思った方も、やり方がわからないのでは意味がありません。ではこのRuby on Rails、どのようにして勉強していったらいいのでしょうか?僕が思うに、初心者のかたは以下の手順を参考にしていただければいいと思います。

1.全体概要をぱっとつかむ

この記事を読んでも、実際どう開発をしていけばいいのかわからないと思います。そこで、具体的にどのようにしてRailsを使って開発が行われるのか。それを小学生でもわかるように簡単に説明してくれているのが以下のサイトです。
小学生でもわかるRuby on Rails入門

2.書籍をとことん読み込む

Railsがどのようなものかをざっと理解したら、より深い知識をつけていきましょう。そのためには、書籍を読むのがおすすめです。以下の2つの書籍はRails勉強本の定番と呼ばれ、多くのエンジニアに親しまれています。
たのしいRuby第5版
Ruby on Rails4 アプリケーションプログラミング

3.実践してみる

いよいよRailsを使ったサービス開発の段階に入ってきました。本を読んである程度の知識はついたはず。ここでは以下の書籍とサイトを読みながら、サービスを開発していきます。
パーフェクト Ruby on Rails
Railsチュートリアル

勉強を続けるためのコツ

勉強するの仕方がわかっても、勉強を続けるモチベーションがないと身につくものも身につきません。この記事を読んでいるあなたがちゃんとRailsをものにするためには、環境づくりが何より重要です。

1.作りたいものを見つけよう

モチベーションを維持するために、まずはあなたが作りたいものを見つけましょう。あなたが困っている、不便に思っている、こんなものあったら面白いな。など、作りたいものは何でもいいでしょう。

一緒に勉強する友達を見つけよう

作りたいものが見つかれば、その後は一緒に勉強できる仲間を見つけましょう。もし友達が見つけられない場合は、Railsを勉強しているコミュニティがあるので、GoogleやFacebookで調べてみてください。

2.友達と競争しよう

一緒に勉強をする友達が見つかったら、その友達と進捗を競争しましょう。週に1回、勉強が進んでいる人が、進んでいない人にご飯をおごるなどをやってみても面白いんではないのでしょうか。「そこまでやらなくても・・・」という方もいると思いますが、人間、そこまでやらなきゃできません!特にぼくみたいなサボり症のやつは・・・笑

3.SNSもしくはブログを書こう

あなたがしている勉強は、とても価値のあるものになります。初心者の目線からわからかったことが、わかるようになってくるというプロセスは、上級のエンジニアでは味わうことができません。そんな重要なプロセスをブログやSNSで共有してみましょう。あなたの頑張りをみてくれる人から、応援や感謝のコメントがもらえたりします。

最後に

いかがでしたか?初心者のかたがプログラミングを勉強するのにあたって、意識してほしいことは多少わからなくてもとにかく進めていくことです。わからないといって、それを突き詰めようとしても結局わかりません。わからないことはわからないと諦め、どんどん次に進んでいくことが継続のコツでしょう。そこでわからなかったことは、勉強していくうちに「ああ、そういうことだったのか!」と解決するからです。

  • このエントリーをはてなブックマークに追加