RubyOnRailsを触れる過程でMVCという概念を学び その後、他のフレームワークでMVCやMVP、MVVMというものを知ったのですが Railsで語られるMVCと他で語られるMVCのニュアンスが若干違うので そこを基点にMVCの違い、そしてMVP、MVVMとは何なのかをまとめてみました。 MVC(Model,View,Controller) 定義としてのMVC 上記でも挙げた通りMVCは使う場面やフレームワークによって ニュアンスが異なっています。 そのため根本的な「MVC」の一般的な定義は一体どんなものなのかを見てみました。 Wikipediaからまとめると以下のとおり。 アプリケーションソフトウェアの内部データを ユーザーが直接参照・編集する情報から分離する。 そのためにアプリケーションソフトウェアを 「Model」「View」「Controller」の3つに分割する。 ・Mod