Revised: 28th/June/2002
プログラミングのフレームワークとして、 Model-View-Control (MVC) と呼ばれるものがあります。サーバサイドアプリケーションのウェブ・フレームワークでは、Apache Jakarta プロジェクトの Struts が有名です。
異なった状況で使用するアプリケーションにおいて、似たような処理/機能が必要とされる事が多々あります。そういう事例をパターン化して再利用可能なアーキテクチャを提供するのがフレームワークです。フレームワークをより具体化したものをパターンと呼びますが、ここではフレームワークについて紹介します。
抽象的なアプリケーションの骨格をフレームワークが提供し、その実装をクラス・ライブラリなどを用いて実装する事になります。フレームワークは、経験豊富なアーキテクトの知恵を共有/再利用するための仕組みです。
フレームワークの利点は、利用出来るシチュエーションが多く、設計フェーズを短くし、コーディング量を最小化できることです。逆に言えば、以上の特徴を備えたフレームワークが優れたフレームワークだといえます。
Model-View-Controller アーキテクチャは、1972 年にオブジェクト指向を確立した言語 Smalltalk のユーザインタフェースのためにアーキテクチャとして提唱されました。
J2EE では、MVC はそれぞれ、機能、プレゼンテーション、コントロールロジックに対応します。
特に、MVC を次のように実現するアーキテクチャを MVC Type-II (Model 2) と呼びます。
Web アプリケーションで MVC モデルを利用するには、Java Bean/JSP/Servlet 間でクライアント要求/応答を受け渡す仕組みを習得する必要があります。
また、 MVC モデルの具体的なアーキテクチャである Struts などのフレームワークを利用するには、その詳細も勉強する必要があります。
本稿では、 MVC モデルで必要となる、 Java Bean/JSP/Servlet 間の要求/応答の受け渡し方法及びその具体例を紹介して、 MVC モデルが何であるのかを紹介します。