LoginSignup
0
0

More than 1 year has passed since last update.

[Rails]MVCについて自分の言葉でまとめてみる

Posted at

先日、RailsのMVCについて説明する機会があったときに、
(緊張も相まって)全く日本語にならず、
「言語化できないって理解してるつもりでも理解できてないってことだな」
と猛反省したので、全くRailsを知らない人にも伝わるように、改めてまとめてみることにしました。
誤っている部分などありましたらご指摘いただけますと幸いです。

MVCとは

Model / View / Controller の頭文字をとってMVCです。
Railsなど、Webアプリケーションを作るときに使うフレームワークの多くが、
このMVCの構造によって成り立っています。

Modelとは

そのアプリケーションのデータベースの窓口のようなものです。
基本的にはデータベースの各テーブルに一つあって、データベースとのやりとりをしてくれます。

Viewとは

Webアプリケーションの見た目の部分です。

Controllerとは

アプリケーションがどう動くかをここで決めています。
(ほとんどが)各Modelに紐づいていて、そのModelにまつわる動きをコントロールしています。

動きをコントロール:Modelにお願いしてデータをとってきたり、そのデータを反映させたviewを返したりしています。

Routerとは

いきなり出てきましたが、こちらもアプリケーションにとって大切な役割を担っています。
クライアントから渡ってきた、URLとHTTPメソッドから、どのControllerのどのActionを取るか、という指示を出している、案内板みたいなものです。

ざっくりまとめると

  • クライアントからあったリクエストに応じて、
  • Routerが「こっちのControllerのこのActionを動かすんだよー」と指示。
  • Routerから指示があったControllerが指示されたActionをする。 (Modelを介してデータをやりとりしたり、Viewにデータを渡したり)
  • ControllerがActionした結果を、人に見やすい形でViewで表現する。

参考

Railsガイド

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0