連載
» 2008年06月18日 00時00分 公開

いまさら聞けない、Webアプリケーションの常識Webアプリの常識をJSPとStrutsで身につける(1)(2/2 ページ)

[石川靖,株式会社メセナ・ネットコム]
前のページへ 1|2       

Webアプリ開発に推奨されている「MVCモデル」とは?

 次に、再利用性が高く、明確に機能分担されるなどの理由でWebアプリケーションを開発する際に推奨されている「MVCモデル」について説明します。

 「MVC」とは「Model」「View」「Controller」の頭文字を取ったものになります。MVCはJava開発における概念のことを指します。次回以降で説明するJavaのフレームワークであるStrutsの基本設計思想となっていて、Strutsを使ったWebアプリケーションを設計する際の基本となる考え方となっています。

  • Model
    ビジネスロジックなど、「システムの根幹」部分を担当ビジネスロジックなど、「システムの根幹」部分を担当
  • View
    その名のとおり「表示」や「入出力」を担当その名のとおり「表示」や「入出力」を担当
  • Controller
    上述の、ModelとViewの制御を担当上述の、ModelとViewの制御を担当

 MVCモデルの利点も含めての説明は、「MVCモデルという言葉をよく聞きますが何のことですか?」を参考にしてください。

 本連載では、下記がMVCのそれぞれに当たります。

  • Model:JavaBean
  • View:JSP(JavaServerPages)
  • Controller:サーブレット(Servlet)

 それでは、ここで出てきたJavaBeansとJSP、サーブレットを順に説明します。

JavaBeansとは?

 「JavaBeans」とは、Javaによるソフトウェア・コンポーネント開発モデルです。共通モジュールを部品として利用し、ソフトウェアを開発する手法の実装と使用を指します。

 JavaBeansの仕様に基づいて作成された再利用可能なコンポーネントを「JavaBean」や「Bean」と呼びます。「JavaBean」や「Bean」はサーブレットで作成・保存し、JSPで読み込むデータそのもの(オブジェクト)です。

 今回は、Struts上で、JSP/サーブレットを使うシステム開発を想定していますが、「JavaBeansのJavaBeansたるゆえん」にJavaBeansの詳しい解説がありましたので、参考にしてください。

JSPとは?

 「JSP」とは、JavaServerPagesの略です。HTMLファイルにJavaのコードを埋め込んだファイルのことを指し、最終的にWebブラウザに戻したいページをHTML形式で作成します。

 動的に値を表示したい部分にJavaのコードを埋め込みます。これは、JSPタグと呼ばれるタグで記述する必要があります。初回実行時にアプリケーションサーバでJavaのコード(サーブレット)に変換され、コンパイルされます。

 JSPの詳細については、「JSPとは何ですか?」を参考にしてください。

サーブレットとは?

 「サーブレット」とは、サーバ側で動作するJavaのプログラムのことを呼びます。WebブラウザなどからHTTPリクエストを受け、実行します。HTTPリクエストを受け取り、何らかの処理を行い、HTTPレスポンスにて、結果を返します。単独では動作しません。サーブレットを実行できる環境が必要となります。

 サーブレットの詳細については、「Javaを紐解くための重点キーワード『Java Servlet(サーブレット)』」を参考にしてください。

アプリケーション開発の“土台”、フレームワークとは?

 最後に、フレームワークについて説明し、以上をWebアプリケーションの前提知識とします。

 「フレームワーク」とは、アプリケーションを開発するに当たって“土台”、もしくは“枠組み”となるソフトウェアのことを指し、クラスライブラリの集まりのことです。再利用可能な共通ライブラリをフレームワークにまとめることによって、開発効率を高め、品質を確保します。

 一般的には、フレームワークに機能を追加していく形で、Webアプリケーションの開発を進めます。Webアプリケーションのフレームワークとして有名なのは、Apache Struts(以降、本連載では「Struts」と呼ぶ)やRuby on Railsなどがあります。

 本連載はJavaプログラマー向けということで、Strutsを取り上げていきます。Strutsについては、次回詳しく説明する予定となっているので、今回は割愛します。

今後学んでいく「Webアプリの常識」とは?

 今回は本連載を読んでいくうえでの前提条件として、「Webアプリケーションの常識」を紹介しましたが、いかがでしたでしょうか。今回の内容をしっかりと覚えて、次回以降に備えておいてください。また、JSP/サーブレットやStrutsを含む「JavaベースWebアプリケーション開発の歴史」も知っておいた方がいいでしょう。

 そして、下記が今後の連載予定内容となっています。前半では、Webアプリケーションを構築するうえで必要な技術の常識を解説し、中盤ではJavaのテクノロジーと絡めた技術の説明を、後半ではWebアプリケーション特有の技術や制約などについて説明していく予定です。

  • Strutsの常識
  • ソースコード以外の設定ファイルの常識
  • サーバとクライアントの常識
  • HTMLタグ、バリデーションについて
  • プロトコルの常識
  • ステートの常識
  • データベース連携の常識
  • Webアプリケーションのテスト手法の常識
  • Webアプリケーションにおけるセキュリティ、脆弱(ぜいじゃく)性の常識
  • Webアプリケーションにおけるスクリプトの常識

 次回は、「Strutsの常識」と題し、Webアプリケーションのフレームワークの1つであるStrutsについての概要やサンプルプログラムなどを解説しますので、お楽しみに!

プロフィール

石川 靖(いしかわ やすし)
株式会社メセナ・ネットコム所属

プログラマー、SE、プロジェクトマネジャーを経て、現在、PMO(マネジャー)として従事。Webのフロントエンド部分の開発を得意とする。PMP資格保有者。

社会貢献のため新しいビジネスの創造を行うとともに、「真の技術者」への道を奔走中。

個人ブログ
New Horizon



前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。