あなたは最近Ruby on Railsが流行っている、Ruby on Railsで簡単にWebアプリケーション開発ができるなど、頻繁にRuby on Railsという言葉を聞きませんか?
プログラミング関連のものだとは理解できても、具体的にどのようなものか理解するのは難しいかもしれません。
この記事では、誰にでもわかるRuby on Railsの説明はもちろん、それらを語る上では欠かせない「Webサイト」や「Webアプリケーション」に関しても簡単に解説していきます。
この記事もオススメ

この記事の目次

そもそもWebサイトが見れる仕組みって?
Ruby on Railsを学ぶ前に、より大きな枠組みであるWebサイトについて考えてみましょう。
普段私たちが何気なく見ているWebサイトですが、どのような仕組みで見れるのでしょうか?
ここではリクエストとレスポンスという概念が登場します。
リクエストとレスポンス
みなさんが見ているこのWebサイトも他のWebサイトも、インターネットにつながっていることで初めて見ることができます。
その際、あなたのスマートフォンやパソコンはサーバーと通信をしています。大雑把ですが、サーバーとは、画面のないパソコンと捉えておきましょう。
例えば、そのサーバーに自分のスマートフォンやパソコンから「https://tech-camp.in/note/を見せて!」と信号を送るとあなたは「https://tech-camp.in/note/」を見ることができます。
ここで、「https://tech-camp.in/note/を見せて!」のようにサーバーに情報を要求することをリクエスト、サーバーが要求された情報を返すことをレスポンスと言います。
実はこのWebサイトには静的なサイトと動的なサイトの2種類が存在します。
静的なサイト・動的なサイト
Webサイトには大きく2種類あり、静的なサイトと動的なサイトに分けられます。
静的なサイトとは?
静的なサイトとは、いつ誰が見ても同じ内容が表示されるサイトのことを指します。データベースとやり取りのないサイトとも言えます。ここではデータベースとはあるデータを保存しておく場所と捉えてください。
静的なサイトはHTMLやCSS、JavaScriptといったプログラミング言語で構成されます。
動的なサイトとは?
一方で、動的なサイトとはデータベースとやり取りがあり、いつ誰が見るかによって、異なる内容が表示されるサイトのことを指します。
これらのページを作る際には静的なサイトで必要なプログラミング言語に加え、RubyやPHPなどといったプログラミング言語が必要になります。
例えばTwitterにアクセスすると、アカウントを所持していれば人それぞれ違った内容が表示されます。
これは人によってデータベースから取り出してくる情報を変えているためです。
このような動的なサイトでは、いつ誰が見るかによって、異なる内容が表示されます。また、このような動的なサイトはWebアプリケーションと呼ばれることがあります。
スキルゼロ・実務未経験でもITエンジニアになれる!
テックキャンプはこれからのIT時代で自分の可能性を広げたい人を応援します。
- プログラミングは難しくて挫折しそう
- 独学でちゃんとスキルが身につくのか不安
- 効率的にプログラミングスキルを習得する方法を知りたい

Ruby on Railsとは?
この記事もオススメ



ここまでで、Webサイトは静的なサイトと動的なサイトがあるということを学んできましたが、Ruby on Railsとは結局何者なのでしょうか?
結論から言うと、Ruby on Railsとは動的なサイト(Webアプリケーション)を作りやすくしてくれるものです。少し固い表現をすると、Webアプリケーションを作るためのフレームワークと呼ばれます。
Ruby on Railsを使えば、簡単にWebアプリケーションを作ることができます。また、Ruby on Railsは省略して、Railsと呼ばれることもあります。
フレームワークとは?
フレームワークとは、骨組みや骨格といった日本語に置き換えられます。要するに、Ruby on RailsはWebアプリケーションを作るための骨組みを提供してくれます。
骨組みがあるということは、始めからWebアプリケーションを作るのに必要な機能がある程度備わっているということです。
この骨組みが存在することによって、生産性が向上する・運用コストが下がるなどのメリットがあります。
Ruby on RailsではHTMLやCSS, JavaScript, Rubyなどを使ってコードを書き、Webアプリケーションを作っていきます。
比喩を用いると、家を作るための骨組みや土台(Ruby on Rails)に壁や家具(HTML, CSS, JavaScript, Rubyなど)を取り付けていくイメージです。
特徴
Ruby on RailsはRuby環境で利用出来る代表的なフレームワークでありますが、Ruby on RailsではMVCパターンと呼ばれる構造を採用しています。
MVCパターンとはアプリケーションをModel、View、Controllerの3つに分割しようという設計モデルで、それぞれの役割は下記の通りです。
- Model
→データベースに対して操作を行う
- View
→見た目の部分(HTML)を担当
- Controller
→リクエストの処理やモデルとのやりとりなど全体の管理
MVCとはっきり役割を分けることで、開発において分業がしやすくなったり、仕様変更に柔軟に対応できるなどのメリットがあります。
Ruby on Railsを使うメリット
今まで説明してきた通りRuby on Railsを使用することで、簡単にWebアプリケーションが作れる、生産性が上がるなどといったメリットがありましたが、他にもメリットがあります。
Ruby on Railsは日本語での情報が豊富にあり、初心者でも習得しやすくなっています。また、最近スタートアップを中心にRuby on Railsを使った開発案件も増えてきていて仕事を獲得しやすい状況です。
Ruby on Railsの歴史
プログラミング言語Rubyの開発者がまつもとゆきひろさんによって開発されたのに対し、Ruby on Railsはデンマークのプログラマであるデイヴィッド・ハイネマイヤー・ハンソンによって開発されました。
2004年7月に公開され、現在までアップデートを重ね、2016年7月には様々な機能が追加されたバージョン5がリリースされています。
Railsエンジニアの年収
スタンバイの調査によるとRubyの平均年収は606万円とプログラミング言語の中で第3位となっており、以下のサイト内での説明の通り、非常に注目度の高い言語となっています。
最初からオブジェクト指向言語として設計された日本発の言語。文法が比較的容易であり、アプリケーションフレームワークRuby on Railsの人気によってその存在感が更に増しています。
ベンチャースタートアップ企業の求人が多いのが特徴です。また、シリコンバレーではRubyエンジニアの給与水準が高まっているというデータもあります。
具体例
実際にRuby on Railsを用いて運用されているサービスを紹介します。
cookpadは料理レシピの検索サイトです。2016年9月現在では約248万レシピが投稿されています。
wantedlyはIT/Web業界のソーシャルリクルーティングツールです。
おすすめサイト
Ruby on Railsを理解した上で、入門をやってみたいという方は、以下のリンクをご覧になって下さい。
【徹底解説】プログラミング学習おすすめサイトTOP5【比較表付き】

Ruby on Railsとは まとめ
Webサイトの仕組みからWebアプリケーションやRuby on Railsに関して説明をしてきましたが、いかがでしたでしょうか?
はじめはイメージしづらくとっつきにくいですが、この記事を読んで少しでもイメージをしていただけたのであれば嬉しいです。
これをきっかけにぜひあなたもRuby on Railsに触れてみてはいかがでしょうか。
この記事もオススメ



未経験からの転職の悩みを解決!無料カウンセリング開催中【転職成功人数4000名以上!※1】

こんな不安や疑問はありませんか?
・未経験から転職して、本当に年収が上がるのか
・ITエンジニア転職後の働き方や稼ぎ方が想像できない
・スキルゼロからITエンジニアとしてフリーランスになれるのか
カウンセリングでは、ITエンジニア転職やプログラミング学習を知り尽くしたプロのカウンセラーが、あなたの悩み解決をサポートします。満足度93%※1、累計利用者数は42,000人以上!※2
無料で相談できますので、気軽にご参加ください。【テックキャンプは給付金活用で受講料最大70%オフ※4】
※1.2018年10月24日〜11月16日(N=106) 2.2020年12月時点 3.テックキャンプ エンジニア転職は経済産業省の第四次産業革命スキル習得講座の認定も受けており、条件を満たすことで支払った受講料の最大70%(最大56万円)が給付金として支給されます