Railsでの設計のポイント(基本構造)

2020年06月29日

webアプリケーションの設計をする時、どんな構造で作ろうか悩みますよね。

私が勉強しているrailsの基本構造は決まっていてMVCという基本構造を使用します。

その構造に沿って開発していけば簡単にwebアプリケーションを作ることができるようになります。

具体的にどんな構造のことか説明していきます。


MVCとは


Railsフレームワークのアーキテクチャー(設計)の考え方でアプリ全体を

  • M(model:モデル)
  • V(view:ビュー)
  • C(controller:コントローラー)

の3つの機能に分類して設計する考え方になります。

3つの機能に分けることでメンテナンス性の高いプログラムになります。


3つの機能の紹介


V(view:ビュー)とは

アプリや画面の見た目ことで、HTMLとして表示された部分の事です。

例えるなら言われたことだけやる従業員みたいなやつです。


C(controller:コントローラー)とは

モデルとビューの仲介をしていて、司令塔みたいな役割を担っています。

ユーザーの入力によってモデルにデータの取得や保存を依頼し、モデルからのデータを受け取りビューへ渡すという仕事をしています。

例えるなら色々な人に指示だしをする現場監督のようなやつです。


M(model:モデル)とは

コントローラーからの指令によって、データベースとの連携を主に行っています。

なぜ必要なのかというと、データベースはrailsとは違う言語、SQL文を使用している為、そのままでは連携ができないからです。そこで通訳的な仕事をこなしています。

例えるなら言われたことだけやるが、専門的な知識を持ったオタクなやつです。

こちらが私が書いたイメージです。

このようなイメージで必要なデータを画面に写したりしています。


まとめ


  • MVCとはアプリ設計の基本構造のこと
  • 3つの機能に分けて開発することでメンテナンス性がよくなる

となります。