No.1ベストアンサー
- 回答日時:
Springはそれほど本格的に使ったわけではないんですが・・・。
DIでは、POJO(Plain Old Java Object)を利用しますから、やたらと重たいEJBより動作は軽快ですね。また、単なるサーブレットコンテナ(内のDIコンテナ)で動くので、EJBコンテナを必要とするEJBよりサーバも軽快です。
それから、DIではオブジェクトへの値設定などはすべてソースコードから切り離されますから、それらの修正のためにクラスをリコンパイルする必要がありません。その点、ちょっとした修正のためだけにプロジェクトをリビルドしデプロイするEJBより開発も軽快でしょう。
工程数そのものにどれぐらい影響があるかはちょっとわからないのですが、そうした「すべてにおいてフットワークが軽くなる」という利点はあります。
ただ、DIの最大のメリットは、開発そのものより、その後のメンテナンスだと思います。プログラムってのは作って終わりではなくて、その後に何度も何度も修正します。基本が出来上がると、それを継ぎはぎして使い続けるわけです。DIではクラス間の結びつきが粗ですので、途中で一部を置き換えたりするのも簡単ですし、設定の変更程度ならコードを一行も書き換える必要はありません。
システムのライフサイクルを考えるとき、DIを導入した方が後々の改修などでは大幅に手間が少なくすみ、システム自体も長生きできるように思えます。
デザインパターンなどは必要なくなるのか?というと、これは全く別の話でしょう。DIでもデザインパターンは使われます。DIは「いかにしてクラスから依存性を切り離すか」の問題解決技法であり、システム全体のデザインなどに関わるものではないように思えます。現に、SpringもMVCにそって設計されていますし、Strutsなどと併用することも考えられています。
もちろん、DIを導入することで変わる部分はありますけど、デザインパターンの考え方自体はそのままいきていますから、不要となるわけではないと思います。
ちなみに、EJB 2.0に取って代わるということがいわれましたが、EJB 3.0では逆にDIを取り込んでますので、今後は「DIによるライトウェイトなEJB」という不可思議なものが生まれそうです(笑)。ですので、EJBがなくなることはないかと思います。
以上、まぁ個人的な意見ということでご参考程度に。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 賃貸マンション・賃貸アパート 周囲に気づかれずアパートもしくは貸しコンテナを借りる方法 1 2022/07/31 18:18
- デジタルカメラ 動画撮影に使うレンズ。どちらのレンズがいいか悩んでいます 1 2023/01/02 18:21
- 数学 『iの微分』 7 2023/02/06 19:45
- 法学 既判力 時的限界について 1 2023/03/15 11:46
- Word(ワード) ネットの文章をワードに貼り付けるとき、幅を広げる方法 6 2022/05/30 11:04
- 一眼レフカメラ canonのeosシリーズ使ってます。 広角レンズをレンタルしようと考えています。 canon純正 5 2023/02/20 23:33
- 書類選考・エントリーシート 志望理由のアドバイスお願いします!! 1 2022/09/23 11:53
- 工学 過渡現象 RL回路で 回路方程式 Ri+L(di/dt)=E 定常解 is=E/R 過渡解 Ri+L 1 2022/06/08 21:47
- 倫理・人権 同性婚を合法化したら、少子化が進むと考える人は、論理的思考ができないのでしょうか? 下に、同性間が合 11 2023/05/31 08:48
- デジタルカメラ 一眼レフ撮影画像の上端の一部が明るいです 2 2023/08/20 11:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グローバルIPとプライベートIP...
-
1 つのヘッダファイルに複数の...
-
同一パッケージにあるクラスが...
-
java eclipse 型に解決できません
-
packageとimport の違いって?
-
自作のクラスファイルがインポ...
-
「天声人語」をインターネット...
-
配列の重複する値とその個数を...
-
私はクラスLINEにまだ入れてな...
-
どこからも呼ばれていない無意...
-
クラスにアクセスできません。
-
河合塾のクラス分けについて
-
UMLのクラス図はmain()も含むん...
-
重複エラーを解決するには
-
EclipseでJSPのコンパイルエラー
-
共通で使う関数を集めたクラス...
-
正規表現を使った小数入力チェ...
-
IPアドレスの3バイト目の呼び方
-
IPアドレスのクラスAを取得して...
-
クラス修飾子やアクセス修飾子...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3年間同じクラスになる確率
-
「天声人語」をインターネット...
-
配列の重複する値とその個数を...
-
自分事ですが、私のLINEのスク...
-
java eclipse 型に解決できません
-
同じクラスにならない確率を教...
-
どこからも呼ばれていない無意...
-
グローバルIPとプライベートIP...
-
担任にプレゼント
-
数学の計算問題。 3年間同じク...
-
クラスのプロパティに構造体を...
-
河合塾のクラス分けについて
-
IPアドレスのクラスAを取得して...
-
共通で使う関数を集めたクラス...
-
自作のクラスファイルがインポ...
-
1 つのヘッダファイルに複数の...
-
ヒートテックやファイバーヒー...
-
dllと同じプロジェクトにする方法
-
main()を持つクラスが2つ以上...
-
同一パッケージにあるクラスが...
おすすめ情報