これからWebアプリケーションを作ってみたいという方がいるかと思いますが、実際にWebアプリケーションを一から作るとなると思った以上に大変な作業です。
Webアプリケーションを一から作るには幅広い知識と技術が求められています。
しかし、幅広い知識と技術がなくてもRuby on Railsというフレームワークを習得することでWebアプリケーションを比較的簡単に作成することができます。
このページではRuby on Railsとはどのようなものかという基礎的な知識を解説していきます。
是非、最後まで読んでいただければと思います。
目次
1.Webアプリケーションの開発とは?
Webと聞くと多くの人がWebブラウザに表示されるWebページを思い浮かべる方が多いかと思います。
WebページはWebブラウザとWebサーバーがやりとりすることで閲覧することができています。
具体的に、WebブラウザとWebサーバーはどのようなやりとりを行っているのでしょうか。
WebブラウザがWebサーバーに特定のファイルを送ってくださいという命令を出し、WebサーバーがWebブラウザの要望通りファイルを送り返します。
そして、WebブラウザがWebサーバーから送られてきたファイルを解析し、Webページを表示させています。
しかし、Webサーバーは単にファイルを送るだけというものばかりではありません。
Webサーバーはプログラミング言語で記述されたプログラムファイルをその場で実行し、処理を行うことも可能となっています。
例えば、Webブラウザから「この商品の情報をください」と要求すると、その場でプログラムを実行し、データベースから検索し、画面に表示させるということもできます。
1ページ1ページ商品に合わせたWebページを作ってしまうとWebページの数が膨大になってしまうため、サーバー側で処理を行うプログラムを作ると何ページも作らなくていいというメリットがあります。
ここでは簡単な例をもとにしてWebアプリケーションのやりとりを解説しましたが、実際にサーバー側で複雑なプログラムを組もうとすると想像以上に大変作業となります。
2.フレームワークとは?
Webアプリケーションはプログラムを組むことも大変ですが、プログラムを組んだ後のメンテナンスも大変な作業となっています。
例えば、Webアプリケーションをリリース後、担当者が変更になった時、前の担当者が組んだプログラムの内容が分からないということがあります。
このように自分以外の人が作ったプログラムを理解するというのは中々理解し難いものです。
そこでフレームワークというものが最近使われるようになりました。
フレームワークとは仕組みを持ったプログラムのことです。
「1.Webアプリケーション開発とは」で解説した例のようにWebアプリケーションのプログラムは基本的に同じような仕組みになっています。
基本的な部分がフレームワークとして用意されて、必要に応じてカスタマイズするだけであればWebアプリケーションの構築やメンテナンスが容易になります。
3.Ruby on Railsとは?
ここまででWebアプリケーション、フレームワークとは何かを解説してきましたが、ここではフレームワークであるRuby on Railsについて解説していきたいと思います。
フレームワークの種類は他にも存在していますが、Ruby on RailsはWebアプリケーションを作るためのフレームワークとなっています。
Ruby on Railsが開発される前もフレームワークは利用されていましたが、高度な知識がないと使いこなすことが困難でした。
しかし、Ruby on Railsが開発されたことで高度な知識がなくてもWebアプリケーション開発が可能となりました。
それではRuby on Railsがどのようなフレームワークになっているのか見ていきましょう。
Ruby on RailsはMVCフレームワークと呼ばれており、内部構造は機能毎に分かれています。
MVCとはModel(モデル)、View(ビュー)、Controller(コントローラー)のイニシャルを取ったものとなっています。
Model(モデル)、View(ビュー)、Controller(コントローラー)は以下のような役割を担っています。
Model | Modelはデータを扱うためのものです。 データベースにアクセスして、データを取り出すという機能を提供しています。 |
---|---|
View | Viewは画面表示するためのものです。 データベースから取り出したデータを画面に表示するという機能を提供しています。 |
Controller | Controllerはプログラムを制御するためのものです。 Webブラウザからの要求に応じて、ModelやViewを呼び出して処理を行い、結果をWebブラウザに返すという機能を提供しています。 |
MVCフレームワークを図で表すと以下のようになります。
上記を見て分かるかと思いますが、Controllerは必要に応じて、Modelからデータベースのデータを取り出したり、Viewから画面表示するためのファイルを受け取ったりして処理を行っています。
このようにMVCフレームワークは3つの要素に分けてプログラムを組んでいきます。
MVCフレームワークを利用して複雑なWebアプリケーションを組むことは難しいですが、たいていのWebアプリケーションはこの考え方で作ることが可能です。
4.Ruby on Railsを学ぶことができるオススメの教材
Ruby on Railsを学習している皆様にオススメの教材をご紹介させていただきます。
現場で使える Ruby on Rails 5速習実践ガイド
以下の本はRuby on Railsの学習を一通り終えてある程度知識を身につけた方にオススメしたい本です。
「現場で使える Ruby on Rails 5速習実践ガイド」は現場で実際にどのように使われているのかという視点も交えて解説されています。
そのため、初心者の方が次のステップに進むために最適な本となっていますので、オススメです。
これらの本で是非学習を進めてみてはいかがでしょうか?
レベル別におすすめの本も紹介していますので、どのような本がオススメか知りたい方はこちらもご覧になって下さい。

Udemy
UdemyではRuby on Railsを学ぶことができる講座を多数取り扱っています。
以下の記事でRuby on Railsを学ぶことができるオススメの講座をまとめていますので、よかったらご覧になって下さい。

プログラミングスクール
TechAcademy、WebCamp、CodeCamp、Tech CampなどでRuby on Railsを学ぶことができます。
それぞれ無料体験も行っているので、どのようなものか試してみるのもいいでしょう。
以下の記事で各プログラミングスクールをまとめているのでこちらもよかったらご覧になってください。









5.ポイント
- WebアプリケーションはWebブラウザ、Webサーバー、データベースがやりとりをすることでプログラムが動作しています
- フレームワークを利用することで開発時間が短縮され、メンテナンスも容易になります
- Ruby on RailsはModel、View、Controllerの機能毎に分かれています