作成日: 2022/01/09
1

今回はAPIモードでrails newしたのでMVCでいうところのViewが存在しません。

...知ってて当然のようにいきなりMVCという単語が出てきた。
というわけで今回の各駅停車、MVCって何ぞ。

MVC・・・機能を「Model」「View」「Controller」の三つの役割に分離して実装し、それらが連携して処理を進める方式。ソフトウェアの設計モデルの一つ。

Model >>> データベースの管理
Controllerからの指示でデータベースから必要なデータを取得しControllerへ返す。データのチェック、更新、削除もお仕事に含まれる。

View >>> 最終的な出力・描画
Controllerからの指示でブラウザ表示するのに必要なhtmlを生成しControllerへ返す。表示に必要なデータはControllerから得る。

Controller >>> ModelとViewへの指示役
ModelViewに作業を指示するディレクターみたいな立ち位置。

...なんかエンジニアとデザイナー(コーダー)とディレクターみたいな関係。それぞれの役割を明確にして作業管理しやすくしましょう、というのがMVCの目的。ロジックをModelではなくControllerに書くことも出来るけど、それはエンジニアの仕事をディレクターが片手間にやるようなカンジで非効率。通称「Fat Controller」ですって。グダグダな制作進行にならないようにControllerがしっかりModelViewに適材適所な仕事を割り振りしましょう。

参考資料:
【Rails】 MVCフレームワークを初心者向けに丁寧に解説!
MVC(Model-View-Controller)とは - IT用語辞典 e-Words

余談
Fat Controllerでgoogleしてみたらトップハム・ハット卿がhitした。Sir_Topham_Hatt_1986.jpg


JavaScriptとSassと英語が好き。