TOP調査レポート> はじめに
オープンソースの適用可能性を示す
オープンソースの適用可能性を示す

第12回:OSSのプロがいなくても大丈夫必要なソフトの情報はこうして探す(後編)
著者:イーシステム  芝 国雄   2006/7/5
1   2  3  次のページ
はじめに

   前回は、オープンソースソフトウェアの探し方について説明してきたが、今回はフレームワークについて解説する。
フレームワークの目的は開発生産性の向上

   Javaでシステムを開発するエンジニアのために、オープンソースのJavaフレームワークについて解説したい。周知のとおり、最近ではオープンソースのJavaフレームワークが多くリリースされている(表1)。

Struts(ストラッツ) Javaを使用してWebアプリケーションのためのフレームワーク。MVC(Model、View、Controller)と呼ばれるソフトウェアの設計モデルを採用している。もっともよく知られたフレームワークの1つ。
JSF(Java Server Faces) 米サン・マイクロシステムズが中心となり開発しているWebアプリケーションのユーザインターフェースを構築するためのフレームワーク。ボタンやフォームなどのWebページを構成するコントロールをコンポーネント化し、ビジュアル開発環境が提供されているので、ドラッグ・アンド・ドロップでイベントドリブン型のWebアプリケーションを開発できる。
Tapestry(注) Java Server Pages(JSP)やVelocityの代替となる、スクリプティング環境を提供するパワフルなオープンソースで、JavaによってリーディングエッジのWebアプリケーションを作成できる。初心者でも熟練の開発者でも、興味をそそられるもので、Webデザイナと開発者の間の調和を図ろうとする魅力的なウェブフレームワークだ。
Turbine(注) VelocityあるいはJSPのWebアプリケーション構築用のModel-View-Controller(MVC)フレームワーク。Turbineには、いくつかのサブプロジェクト(Fulcrum、Torque等)があり、Fulcrumは有益なサービス群を含むフレームワーク、TorqueはRDBのオブジェクトリレーショナルツールを提供する(Torqueは、Apache DB Projectに移行し、Mavenは、Apache直下の独自のプロジェクトとなった)。
Cactus サーバサイドJavaコードのユニットテストのための、シンプルなテスト用フレームワーク。サーブレットやEJB、タグライブラリ、フィルタなどを含む。
HiveMind シンプルなJavaオブジェクト・インターフェースから複雑なアプリケーションを作成するフレームワーク。

表1:オープンソースのJavaフレームワークの適材適所

※注:
http://jakarta.jp/からの抜粋

   ここでは、Javaのフレームワークを選定する際のポイントをいくつか紹介する。

   まず、フレームワークを利用する目的を確認しておこう。「プログラムコードの再利用を容易にする」、「プログラムコードの品質を一定以上に保つ」などがあるが、結局のところ、最たる目的はシステム開発の生産性を向上させることにある。

   そのための施策の1つがプログラムコードの再利用であり、プログラムコードの品質を一定以上に保つことだ。これらが実現できれば、コードの可読性が高まり、システムのメンテナンス性や拡張性が向上。結果的に、システム開発の生産性が上がるわけだ。

1   2  3  次のページ

イーシステム株式会社 芝 国雄
著者プロフィール
イーシステム株式会社  芝 国雄
グプタ事業部 部長
1995年、日本グプタ(現イーシステム)入社。米グプタ社製品の統合開発ツールの「Team Developer」、RDBMSの「SQLBase」といった製品の日本語化をはじめ技術支援や販売、マーケティング業務に従事。主に、ユーザ企業のシステム開発の現場で、システムの設計に関わる事前調査や助言などの上流工程から、プログラミング時のトラブルシューティングまで、幅広く支援していた。2000年4月、携帯電話を活用したワイヤレスソリューション事業の立ち上げに従事。2001年、グプタ事業に専念し、現在に至る。


INDEX
第12回:OSSのプロがいなくても大丈夫必要なソフトの情報はこうして探す(後編)
はじめに
  フレームワークの設計思想を理解する
  生産性向上の評価は競合他社を対象にする