MVCとMVVMとは?えむぶいしー・えむぶいぶいえむ
MVCとMVVMとは、画面を持つソフトウェアで表示と状態を分離する構成の型。MVVMはビューと、表示用の状態を保持するビューモデルをデータバインディングで結び、ビュー側にコードを置かない。ビューモデルは表示ロジックと状態を担い、画面なしで自動テストできる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
表示処理と業務処理が同じ場所に混ざると、画面を変えるたびに中身まで壊れ、画面が要るせいで自動テストも書けない。責務を分けて依存の向きを一方向に固定すれば、表示側だけを差し替えられる。機器のパネルとスマートフォンのアプリで同じ制御ロジックを共有したい場面では、この分離ができているかがそのまま移植の手間になる。
具体例
入力欄の値がビューモデルのプロパティと双方向に同期し、検証エラーの有無も自動的に画面へ反映される。車載やパネルのHMIで使われるQtのQMLも、この結び付けを宣言的に書く仕組みを備えている。
試験での引っ掛け
MVCは、コントローラが入力を受けてモデルを更新し、ビューがモデルを参照して表示する。MVVMはビューモデルがビューを知らず、データバインディングを通じて結ばれる(ビューモデルがビューを直接操作すると書いてあれば誤り)。ビューを直接更新するのはMVPのプレゼンタで、こちらとも混同しやすい。
関連用語
出た過去問
出典:平成29年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問22(IPA)
ヒューマンインタフェースをもつシステムにおいて、機能とヒューマンインタフェースの相互依存を弱めることによって、修正性や再利用性を向上させることを目的としたアーキ…
正解:MVC
要点:MVCは表示と機能を分離し修正性・再利用性を高める
MVCは、データと業務ロジックを担うモデル、表示を担うビュー、入力を受けて両者を仲介するコントローラに役割を分けるアーキテクチャパターンである。画面の見せ方を変えてもモデルに手を入れずに済み、同じモデルを複数の画面から使い回せるので、修正のしやすさと再利用性が高まる。ヒューマンインタフェースと機能の結合を弱めることが狙いである。
出典:令和3年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問21(IPA)
ヒューマンインタフェースをもつシステムにおいて、機能とヒューマンインタフェースの相互依存を弱めることによって、修正性や再利用性を向上させることを目的としたアーキ…
正解:MVC
要点:MVCはUIと機能を分離し修正性と再利用性を高める
MVCは、アプリケーションをデータと業務処理を担うモデル、表示を担うビュー、入力を受けて両者を仲介するコントローラに分離するアーキテクチャパターンである。機能とユーザインタフェースの依存を弱められるため、画面の変更が業務ロジックに波及せず、同じモデルを異なる表示形式で再利用することもできる。修正性と再利用性の向上が狙いである。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。