PR

それぞれのメリット/デメリット

2006年9月4日(月)
山之内 弘行

各フレームワークのメリット/デメリット


   各フレームワークの特長をまとめたところで、次に各フレームワークのメリット/デメリットをあげます。各フレームワークのメリット/デメリットは表2のとおりです。
フレーム
ワーク
メリット
デメリット
iBATIS
  • SQLの機能が生かせる
  • パフォーマンスチューニングなどの柔軟な対応が可能
  • 関連を意識しなければならない
  • マッピング・ファイルにSQL文を記述するため、マッピング・ファイルの管理が煩雑になる
  • 各DBの方言を吸収できない
  • 情報が少ない
Torque
  • SQLレスの開発ができる。
  • POJOが使えない。
Hibernate
  • 機能が豊富
  • 関連を意識しなくてもよい
  • SQLレスの開発ができる
  • 書籍など情報が多い
  • 関連を多用するとパフォーマンスが落ちる。
  • 習得に時間がかかる。

表2:iBATIS、Torque、Hibernateのメリット/デメリット

   iBATISのメリットはSQLを自由に使える点です。SQLを自由に使えるので、柔軟な対応が可能であり、RDBMSの性能をいかしきることができます。逆にデメリットは、関連を意識しなければならない点です。

   第2回で解説したように内部結合を行いたい場合などは、自ら関連付けを行わなくてはなりません。その他のデメリットとして、SQL文を直接記述するのでDBの方言を吸収できない、マッピング・ファイルに直接SQL文を記述するのでマッピング・ファイルの文字量がかなり多くなりファイル管理が煩雑になってしまう可能性があるといったことがあげられます。

   Torqueのメリットは、SQLを使用せずに簡単にデータベースにアクセスできる点です。デメリットは、TorqueのDTOやDAOにあたるクラスはTorque固有のクラスを継承することが求められるので、POJOを用いた開発には使えないことです。

   Hibernateのメリットは、機能がたくさん提供されている点や第5回でとりあげたように関連を意識することなく関連データを取得できる点などがあげられます。逆にデメリットは関連を多用するとパフォーマンスが落ちてしまう点、また提供されている機能を使いこなすためには、習得に多くの時間を要してしまうなどといった点があげられます。

   このように、各フレームワークには一長一短があります。各フレームワークの特長を理解した上で十分に考慮し、フレームワークの導入を検討してください。

株式会社ビーブレイクシステムズ Javaスペシャリスト
前職ではJavaを用いたシステム開発をメインに作業を行う。更なるキャリアアップを目指し、実力次第で上流工程に携われるビーブレイクシステムズに転職。現在はJavaアーキテクトとして活躍中。

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています