【Ruby】Ruby on Railsとは
はじめに:
Ruby on Rails(以下:Rails)、webアプリケーション、webアプリケーションフレームワークについて整理することを目的としている。
この記事を読むことで得られる結果:
Railsがどのようなものなのかを知ることができる。
Railsアプリケーションを作成し、webサーバーに実際に表示させることができる。
Railsとは(基礎):
- Railsとは
プログラミング言語「Ruby」で書かれたWebアプリケーションフレームワーク[1]のこと。
ひとまず「webアプリケーション(webアプリ)」と「webアプリケーションフレームワーク(webフレームワーク)」の2つに分けて理解した方が良いため、解説を行う。
- Webアプリケーションとは
WEBの仕組みを利用したアプリケーションのこと。
Webアプリケーションの仕組み(イメージ図)
すごく簡単にwebアプリケーションの仕組みを下記に記載する。
①図の外にある端末のwebブラウザから図の真ん中にあるwebサーバーにリクエストする。
(言い換え)スマホのGoogle Chromeの検索バーから見たいwebサイトにアクセスする。
②図の線の部分は、ネットワークであり、それを介してwebサーバーにリクエストが届く。
(言い換え)webサイトが表示されるまで時間がかかる。(通信速度が速い遅いとはココ)
②図の真ん中にあるwebサーバーがアクセスされたwebサイト探したあと、図の外にある端末へレスポンスを行う。
(言い換え)Google Chromeに見たいwebサイトが表示されている。
つまり、私たちが普段行っている検索の裏には、webブラウザからインターネットを介してwebサーバーへのリクエストとwebサーバーからのレスポンスが行われるということがこの図から理解して頂けるでしょう。
ちなみに、webブラウザ側のことをユーザーに見える側(=手前)と言い、「クライアントサイド(フロントエンド)」と言う。webサーバー側のことを見えない側と言い、「サーバーサイド(バックエンド)」と言う。
1人または限られた人数でアプリケーションを作るのは大変な作業である。それを解決するのが次に紹介する「webアプリケーションフレームワーク」である。
- webアプリケーションフレームワークとは
「フレームワーク」と言う言葉がつく通り、アプリケーションを作成する上で必要な枠組みと捉えて頂いて構わない。もう少し言い換えると「アプリの開発を効率よく行うための機能や処理が詰まったもの」。
例)ある土地に造りの似ている2階建ての木造住宅を3軒建てる場合
・既に2F建て組まれた木の枠組みがあればいいのにな...
・電気、風呂、トイレ、ガスは生活に欠かせないので木の枠組みにくっ付いていてほしいな...
木造の家を建てる際に「フレームワーク」があると...
➡建設作業の開始日には、すでに木造2F建ての枠組みと電気、水道などが整っている住宅が3軒建っている。
つまり、webアプリケーションフレームワークがあるとアプリケーション開発が効率的に作成することが可能となる。
Rubyの場合だと、代表的なwebフレームワークがRuby on Railsである。
Railsとは(応用):
- Railsアプリケーションを作成してみる
Railsがどのようなものか理解できたところで、実際にRailsアプリケーションを作成してみる。
1: 下記サイトを参考に環境構築を完了させる。
2: コマンドラインでrails new アプリケーション名
でアプリケーションを作成する。
rails new demo
3: VScodeでアプリケーションが作成されているか確認する。
参考サイト
おわりに
今回、基礎でwebアプリケーションのRailsがどのようなものなのかを整理した。応用では、プログラミング初学者でもステップを踏めば簡単に開発環境を整えることができ、アプリケーションが作成できることがわかった。
Discussion