プログラム

(秘)JavaServlet技法

初心者から上級者まで。Java言語によるプログラミングの真髄をレクチャーします。Webシステム開発のエキスパート「株式会社 慶」が発行。

全て表示する >

(秘)JavaServlet技法

2004/09/20

**************************************************************************
_/_/_/_/_/_/_/_/_/_/_/_/_/  (秘)JavaServlet技法  _/_/_/_/_/_/_/_/_/_/_/_/
**************************************************************************
第110号  2004/09/20 発行現在の購読者数:4373
  ▼  Servlet技法:第回
  ▼  コラム
  ▼  次回予告
  ▼  編集後記
  ▼  編集長からのお知らせ

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
  Servlet技法:第110回
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
今回はMVCモデルについてお話しすることにします。


↓前回までの記事はこちら↓
http://www.kei-ha.co.jp/mag.html


↓ご意見・ご質問はこちらから↓
mag@kei-ha.co.jp


◆MVCモデルとは


ソフトウェアの設計モデルの一つで、処理の中核を担う「Model」、
表示・出力を司る「View」、入力を受け取ってその内容に応じて
ViewとModelを制御する「Controller」の3要素の組み合わせで
システムを実装する方式のことです。


●Model

モデルは、システムの中でビジネスロジックを担当する、
いわばシステムの本体部分にあたります。
モデルは入出力や表示といった処理を行うことはできません。


●View

ビューは、表示、入出力といった部分を担当します。
J2EEでは、この部分はServletやJSPで実装します。
一般的なHTML表示に関してはJSP、
そのほかの特殊なデータ(バイナリデータ)を
出力する場合はServletを用いるのが標準的な使い方です。


●Controller

コントローラは、ViewとModelを制御します。
自分自身では表示を行ったり、ロジックの実行は行わず、
Viewからの入力に応じて、必要なロジックの実行をModelに依頼し、
その結果表示をViewに依頼します。
J2EEでは、ControllerはWeb層とEJB層の2つに分かれています。
まず、Web層でViewからの入力を受け付けて、
Webに依存しない形式に変換します。
そしてその情報をEJB層に送信します。
EJB層では、送信された内容に応じて、
必要なロジックが実装されたModel(EJB)に処理を依頼します。
処理結果は再びEJB層からWeb層へフィードバックされ、
Web層がView(JSP)に表示処理を依頼し、
クライアントへ結果が送信されます。


このように、明確に機能ごとに分離することで、
開発作業の分業が容易になり、
また、互いに仕様変更の影響を受けにくくて済むようになります。


サーブレットでは以下のように表します。

モデル(Model)・・・必要なデータの保持と業務ロジック・・・JavaBeans

ビュー(View)・・・画面デザイン・・・JSP

コントロール(Controller)・・・入力方法を受け取りモデルとビューをコントロール
                     ・・・サーブレット


◆MVCモデルの利点


機能ごとの分離が明確になることによって、
それぞれの独立性が確保されます。
開発においては分業がしやすくなり、
各機能の専門家は自分の得意分野の実装に集中することが可能となります。
また、コンポーネント間の依存性が最小限に抑えられるため、
ほかの部分の変更による影響を受けにくい実装にすることができます。
こうすることによって、コンポーネントの再利用性が高まるわけです。
また、ほかのコンポーネントの変更が原因で、
複数の担当者が同一のソースに対してメンテナンスを行う、
というような事態を避けることもでき、保守性も確保される、
といったような多くのメリットがあります。


                                モリモリ
----☆PR☆---------------------------------------------------------------
  オブジェクト指向を勉強したい!,Javaを勉強したい!
  メールマガジン『JavaScript&Javaで目指そう!基本情報技術者試験』
を購読してますか?  (無料)執筆は,宿題メールでおなじみの斎藤末広
  登録  http://www.mag2.com/m/0000066251.htm
  詳細  http://www.3721p.com/java/jmaga/
---------------------------------------------------------------☆PR☆---

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
  コラム
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Javaを取り巻く環境の多くが
オープンソースソフトウェアでありながら、
なぜ代表格といえるOS(Linux)が使われないのか。
Javaで開発されたプログラムは、どのようなOSでも動作するのが特徴だ。
そのため、どのようなOS上で開発し、
どのようなOS上で実行しても基本的に問題ない。
そこで「最終的にLinuxで動作させるならば、
なぜ開発時点からLinuxを使わないのか」と疑問が沸く。

新規開発プロジェクトによっては、コスト削減のために
開発クライアントのライセンスコストにも気をつかうことがある。
Windowsであれば各開発者ごとにライセンスコストが発生するが、
Linuxではハードウェアを用意するだけですむ。

ただ問題点として、Linuxの環境設定が複雑ということが挙げられる。
Linuxは、X Window Systemというウィンドウシステムがあるものの、
未だにコマンドラインをベースとした個所があり、
Linuxのシェルやコマンドを習得していなければ、
いざという時に困ってしまうだろう。
開発者の仕事はソースコードを書くことであり、
開発環境の整備には、時間を要したくないというのが本音でもある。
そこでより簡単に導入できるWindowsでの開発環境が選ばれるわけだ。

Java開発環境としてのWindowsの優位性は、当分揺るぎそうにないようだ。

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
  次回予告
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
  □  Servlet技法:110回
  □  コラム
  □  次回予告
  □  編集後記
  □  編集長からのお知らせ
      次号は、6月21日発行予定です。乞うご期待!!
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
  編集後記
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
編集後記

三・連・休っ!
三・連・休っ!

はい、みなさまこんにちわ。
今週のメルガマはいかがでしたか?
今週末は18日〜20日まで三連休なので軽くウキウキです。

とはいっても…
今週末は土曜日に埼玉へ行く程度で昼寝、昼寝、昼寝ですよ…


三・連・休っ!
三・連・休っ!

さん…れ…ん…きゅ…ぅ…


('A`)

                               ゆーいち
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
              *  *  *  編集長からのお知らせ  *  *  *
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
◆━◇ PR ◇━◆
□■□-------------------------------------------------------------------
■◇■モバイルコマースなら「K-CODE」http://kcode.jp/kcode/index.html
□■□-------------------------------------------------------------------

  ┏━━━━━━━━━━━━┓
  ┃携帯メルマガサイト誕生!┃
  ┗━━━━━━━━━━━━┛
  ☆☆☆お気楽"無料"マガジンサイト『プッチマガ』☆☆☆
  登録も配信もラクラク♪3分でメルマガ配信できちゃう!

  ●●●今週のオススメ『プッチマガ』●●●
  真のSEに贈る、品質管理のノウハウ集
  【品質の番人】!これまで誰も書かなかった
  「システムの品質を実現する方法」を具体的に伝授します。
  登録はもちろん無料!毎週火曜日発行です。

  ↓メルマガ購読&登録はコチラ
  http://kcode.jp/pmag/index.html 提供:株式会社慶
-------------------------------------------------------------------------
  ┏━━━━━━━━━━━━━┓
  ┃あなたのソースを再チェック┃
  ┗━━━━━━━━━━━━━┛
  ☆KSCCでJava、HTML、SQL等々ソースコードを総チェック!☆
  ・性能劣化の原因となるロジックの自動検出機能
  ・プログラムのステップ数計測(Javaは実ステップ数も)
  etc。。他にも機能満載!↓無料お試し&ご注文はコチラ
  ☆近々バージョンアップ予定!☆
  http://kcode.jp/shop/ks 提供:株式会社慶
-------------------------------------------------------------------------
  ┏━━━━━━━━━━━┓
  ┃ソフトウェア業界航海術┃
  ┗━━━━━━━━━━━┛
  ソフトウェア業界の本質をまとめました
  「皆に読ませちゃいました」(某中小ソフトウェア会社社長)
  「こういう視点で書かれた本は他にない。」(某フリーSE)
 「バイブル的存在の位置付けとし、業務に対する考え方(自覚)を、
  社員にも広めて行ければと考えております。」(某大手ソフトウェア会社課長)
   http://kcode.jp/shop/ks 提供:株式会社慶
-------------------------------------------------------------------------
  ┏━━━━━━━━━━━━┓
  ┃航空ファン要チェック!!┃
  ┗━━━━━━━━━━━━┛
  ♪♪♪航空祭でも出店中!♪♪♪
  新作続々登場!ダイキャストモデルも完成しました!
  T-シャツからお子様用飛行服まで豊富な品揃え!
  一度遊びにきて下さいね♪
   http://kcode.jp/shop/bluemax 提供:BlueMax
-------------------------------------------------------------------------
  ┏━━━━━━━━━━━━━┓
  ┃   (秘)Linuxサーバ      ┃
  ┗━━━━━━━━━━━━━┛
  ☆☆新メールマガジン「(秘)Linuxサーバ」☆☆

    Linux初心者が「Linuxとは何なのか」というところから、
    どのようにしてLinuxサーバを構築していけば良いのか
    といったところまで幅広い分野を扱っていくメールマガジンです。
    Linuxに興味をお持ちの方は、ぜひご購読ください。
    なお、5/19(水)第1号発行予定です。

    ↓ご登録はこちらから↓
    http://www.kei-ha.co.jp/magmenu.html  提供:株式会社慶
-------------------------------------------------------------------------
  ┏━━━━━━━━━━━━━┓
  ┃  (秘)データベース構築術  ┃
  ┗━━━━━━━━━━━━━┛

  ☆☆新メールマガジン「(秘)データベース構築術」☆☆

5月26日からDBのメールマガジンを配信することになりました。
「DBをやってみたいけど〜」と思っていた方、今回を機に登録してみてください。
気づいたらDBを構成できるようになっているはずです。

http://www.kei-ha.co.jp/magdb.html  提供:株式会社慶
-------------------------------------------------------------------------
∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞〜∞

                  このメールマガジンは、

                  まぐまぐ
                  http://www.mag2.com/

                  melma!
                  http://www.melma.com/

                  Macky
                  http://macky.nifty.com/index.htm

                  カプライト
                  http://kapu.biglobe.ne.jp/index.html

                  を利用して発行しています。

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
        「(秘)JavaServlet技法」は株式会社慶が発行しています。
                  http://www.kei-ha.co.jp/mag.html
             ご意見・ご質問等はこちら→mag@kei-ha.co.jp
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
              
            

規約に同意してこのメルマガに登録/解除する

メルマガ情報

創刊日:2001-10-02  
最終発行日:  
発行周期:毎週月曜発行  
Score!: - 点   

コメント一覧コメントを書く

この記事にコメントを書く

上の画像で表示されている文字を半角英数で入力してください。

※コメントの内容はこのページに公開されます。発行者さんだけが閲覧できるものではありません。 コメントの投稿時は投稿者規約への同意が必要です。

  • コメントはありません。