MVCモデルを使ったシステム開発のご紹介
皆さんこんにちは。システムエンジニアのAです。
皆さんは「MVCモデル」という言葉をご存知でしょうか。
Web系のシステム開発を行ったことがある方ならよく聞く単語だと思います。
現在、私が所属しているプロジェクトでも「MVCモデル」が採用されており、
未熟ながらも勉強しながら開発に携わっております。
今回は私のおさらいも兼ねて、「MVCモデル」について
簡単にご紹介したいと思います。
まず「MVCモデル」とは、
アプリケーションソフトを実装するための開発手法です。
機能ごとに処理を分けることでそれぞれの独立性を高め、
分業して開発を行うことができるというメリットがあります。
「MVC」はModel、View、Controllerの略です。
「Model」
ビジネスロジック、データベースの操作など
サーバーサイドの処理を担当します。
「View」
Modelが処理によって加工した情報をユーザに表示したり、
Webサイトのレイアウト構成などの処理を担当します。
「Controller」
ユーザから受け取った入力を基にModelの操作を行ったり、
ViewにModelで加工したデータを表示させるなどの命令を行います。
この説明ではよく分からない、イメージしづらいという方もいると思うので
皆さんにとって身近なTwitterを例にとってみます。
Twitterではログインを行うと、
アカウントに紐づいた情報(フォローしている人のツイート、広告)が
タイムラインに表示されます。
この一連の処理をMVCに当てはめてみると、
ユーザのログイン操作を受け
ViewがControllerに「ユーザ情報」と「タイムライン情報取得要求」を送ります。
受け取ったControllerは、Modelを操作し
ユーザ情報を元に、必要なデータをデータベースから取得させ
取得によって生成したデータを保持させます。
データが準備出来たら、ControllerからViewへ
「Modelを参照して必要なデータを取得するよう」要求を返します。
ViewはModelの保持している生成データを参照し
ユーザに対してタイムラインという形で視覚表示します。
実際のTwitterの処理とは違うかもしれませんが
なんとなくMVCそれぞれの役割が理解でき
Web開発でどのように実装を進めて行くのか
イメージがついたのではないでしょうか?
MVCモデルの他にも、「MVC2」や「MVVM(Model View ViewModel)」など
様々な開発手法がありますので、興味がある方は是非調べてみてください。 Back
皆さんは「MVCモデル」という言葉をご存知でしょうか。
Web系のシステム開発を行ったことがある方ならよく聞く単語だと思います。
現在、私が所属しているプロジェクトでも「MVCモデル」が採用されており、
未熟ながらも勉強しながら開発に携わっております。
今回は私のおさらいも兼ねて、「MVCモデル」について
簡単にご紹介したいと思います。
まず「MVCモデル」とは、
アプリケーションソフトを実装するための開発手法です。
機能ごとに処理を分けることでそれぞれの独立性を高め、
分業して開発を行うことができるというメリットがあります。
「MVC」はModel、View、Controllerの略です。
「Model」
ビジネスロジック、データベースの操作など
サーバーサイドの処理を担当します。
「View」
Modelが処理によって加工した情報をユーザに表示したり、
Webサイトのレイアウト構成などの処理を担当します。
「Controller」
ユーザから受け取った入力を基にModelの操作を行ったり、
ViewにModelで加工したデータを表示させるなどの命令を行います。
この説明ではよく分からない、イメージしづらいという方もいると思うので
皆さんにとって身近なTwitterを例にとってみます。
Twitterではログインを行うと、
アカウントに紐づいた情報(フォローしている人のツイート、広告)が
タイムラインに表示されます。
この一連の処理をMVCに当てはめてみると、
ユーザのログイン操作を受け
ViewがControllerに「ユーザ情報」と「タイムライン情報取得要求」を送ります。
受け取ったControllerは、Modelを操作し
ユーザ情報を元に、必要なデータをデータベースから取得させ
取得によって生成したデータを保持させます。
データが準備出来たら、ControllerからViewへ
「Modelを参照して必要なデータを取得するよう」要求を返します。
ViewはModelの保持している生成データを参照し
ユーザに対してタイムラインという形で視覚表示します。
実際のTwitterの処理とは違うかもしれませんが
なんとなくMVCそれぞれの役割が理解でき
Web開発でどのように実装を進めて行くのか
イメージがついたのではないでしょうか?
MVCモデルの他にも、「MVC2」や「MVVM(Model View ViewModel)」など
様々な開発手法がありますので、興味がある方は是非調べてみてください。 Back